zoukankan      html  css  js  c++  java
  • cmd运行java,含传参,引用jar

    1,创建一个java project,完成编码

    在Eclipse的资源管理器中选中你要打包的项目,右键点击,选择“导出”项,弹出导出对话框,在下面的Java目录下选择“JAR 文件”项,下一步,在导出目标路径TextField框中输入你想保存的路径,单击“完成”。 

     1 package com.lxl.it.test;
     2 
     3 import org.apache.commons.net.ftp.FTP;
     4 import org.apache.commons.net.ftp.FTPClient;
     5 import org.apache.commons.net.ftp.FTPFile;
     6 
     7 public class TestFtp1 {
     8     public static void main(String[] args) throws Exception {
     9         FTPClient ftpclient = new FTPClient();
    10         // String host = "10.202.33.210";
    11         // Integer port = 21;
    12         // String user = "hht";
    13         // String password = "hht";
    14         // String path="/HHT/hht5picture/CUR/991406990562/";
    15 
    16         String host = args[0];//"10.202.4.80";
    17         Integer port = Integer.valueOf(args[1]);//21;
    18         String user = args[2];//"lixiaolong";
    19         String password = args[3];//"sf123456";
    20         String path = args[4];//"/home/lixiaolong/SUCC/963123456789";
    21         String character = args[5];//ISO-8859-1
    22         String swit = args[6];//ISO-8859-1
    23         // FTP连接
    24         ftpclient.connect(host, port);
    25         // FTP登陆
    26         ftpclient.login(user, password);
    27         FTPFile[] files = null;
    28         // ftpclient.setFileType(FTP.ASCII_FILE_TYPE);
    29         ftpclient.setFileType(FTP.BINARY_FILE_TYPE);
    30         // ftp服务器接收数据为被动模式,需要客户端主动链接服务端后才进行传输
    31         ftpclient.enterLocalPassiveMode();
    32         // 设定ftp传输模式为字符流模式
    33         ftpclient.setFileTransferMode(FTP.STREAM_TRANSFER_MODE);
    34         // 检查文件是否存在,若不存在则返回false
    35         ftpclient.changeWorkingDirectory(path);
    36         files = ftpclient.listFiles();
    37         for (FTPFile ftpFile : files) {
    38             String fileName = ftpFile.getName();
    39             if("1".equals(swit)){
    40                 fileName = new String(fileName.getBytes(character), "UTF-8");
    41             }
    42             System.out.println(fileName);
    43         }
    44     }
    45 }
    View Code



    2,

    进入Step1中保存jar文件的目录下,用压缩文件管理器打开jar文件,进入META-INF目录下,打开MINIFEST.MF文件,对MINIFEST.MF文件进行编写,格式如下:  
    
    
    请在文本格式下编写,每个空处只有一个空格,文本不能多余两个空行
    Manifest-Version: 1.0 告诉我们使用的是1.0的manifest文件,第一行定义manifest的格式 
    
    
    Main-Class: 主程序入口类名(注意:如果主程序带包,main函数在com包下的test.java中,则写如:com.test
    
    
    Class-Path: 引用包路径,包之间空格隔开(lib是和test.jar同目录的一个子目录,test.jar要引用的some.jar包就在这里面。例如:Class-Path: lib/some.jar lib/some2.jar
    
    
    Created-By: 创建者信息
    注意冒号后面有一个空格
    
    
    Manifest-Version: 1.0

    Main-Class: com.lxl.it.test.TestFtp1

    Class-Path: lib/commons-net-current.jar

    3
    建立批处理文件.bat或.cmd如下start.cmd:  cmd中开启jar程序命令:  java -jar testCmd4.jar

    java -jar testCmddata2.jar "10.202.4.80" 21 "lixiaolong" "sf123456" "/home/lixiaolong/SUCC/963123456789" "ISO-8859-1"  “0”

    
    




    bat
    新建txt 输入如下类容,改后缀为bat文件 另起一行输入pause防止批处理完成后立即关闭

    java -jar d:/test/123/FTP/testCmddata2.jar "10.202.4.80" 21 "lixiaolong" "sf123456" "/home/lixiaolong/SUCC/963123456789" "ISO-8859-1"  “0”

    如果需要把程序打包成jar文件,并且该jar文件依赖了比较多的第三方jar包,手动操作些MANIFEST.MF会出现比较多的问题,需要注意:

    1 在Class-Path中指明依赖的jar包,如果jar文件存放在lib目录下存在两种放置方式:

       a 如果是在你的jar文件中打入了lib目录,则Class-Path中指明的目录是lib/2.jar lib/2.jar 

       b 如果是在你的jar文件所在目录平级存放lib目录,与把lib放入jar文件一样,都是在Class-Path中指明的目录是lib/2.jar lib/2.jar 

    2 如果使用eclipse打包并选择已存在的MANIFEST.MF文件时,行不能过长,否则报错。这时你需要换行,换行是需要注意:

       a 新行的开头使用空格,不能直接顶格

       b jar文件行尾需要有空格,即需要保证jar文件前后都有空格,如“ lib/1.jar "

    3 MANIFEST.MF文件写完后需要连续两行回车,并且新行需要顶格


    Class-Path: lib/httpclient-4.2.3.jar
     lib/commons-logging.jar
     lib/commons-codec-1.4.jar
     lib/commons-httpclient.jar
  • 相关阅读:
    C# 文件类的操作---删除
    C#实现Zip压缩解压实例
    UVALIVE 2431 Binary Stirling Numbers
    UVA 10570 meeting with aliens
    UVA 306 Cipher
    UVA 10994 Simple Addition
    UVA 696 How Many Knights
    UVA 10205 Stack 'em Up
    UVA 11125 Arrange Some Marbles
    UVA 10912 Simple Minded Hashing
  • 原文地址:https://www.cnblogs.com/jiaozi-li/p/5749187.html
Copyright © 2011-2022 走看看