第一:簡單的命令行(沒有package)
c:/temp/bin/GetGreeting.Java
- public class GetGreeting
- {
- public static void main(String [] args)
- {
- System.out.println("Hello world");
- }
- }
1.編譯:cmd--cd到c:/temp/bin javac GetGreeting.java
生成GetGreeting.class文件
2.執行:Java Greeting
打印出Hello world
第二:有package的java程序
c:/temp/bin/client/GetGreeting.java
1.cd到c:/temp/bin/client javac GetGreeting.java
在c:/temp/bin/client 目錄中生成 GetGreeting.class文件
2.cd.. 退回到c:/temp/bin
執行 java client.GetGreeting
打印出Hello world
第三:用命令行調用jar文件(無package)
將GetGreeting.java放在c:/temp/bin中----javac 編譯生成GetGreeting.class
將GetGreeting.java刪除,用jar -cvf test.jar *.*命令打包成jar文件
修改jar文件中的META-INF/MANIFEST.MF文件
在最後加一行 Main-Class: GetGreeting(注意:冒號和GetGreeting間有一空格,否則報錯-Invalid or corrupt jarfile C:/temp/bin/test.jar),然後回車,否則也報錯-Failed to load Main-Class manifest attribute from
C:/temp/bin/test.jar
命令行執行:java -jar c:/temp/bin/test.jar
第四:用命令行調用jar(有package)
將GetGreeting.java放在c:/temp/bin/client中----cd到client目錄,用javac 編譯生成GetGreeting.class
將GetGreeting.java刪除,返回到bin目錄,用jar -cvf test.jar *.*命令打包成jar文件
修改jar文件中的META-INF/MANIFEST.MF文件
在最後加一行 Main-Class: client.GetGreeting(注意:冒號和client.GetGreeting間有一空格,否則報錯-Invalid or corrupt jarfile C:/temp/bin/test.jar),然後回車,否則也報錯-Failed to load Main-Class manifest attribute from
C:/temp/bin/test.jar
命令行執行:java -jar c:/temp/bin/test.jar
第五:用命令行執行class(帶參數)
類似第一步
GetGreeting.java
- public class GetGreeting
- {
- public static void main(String [] args)
- {
- System.out.println("input length is:"+args.length);
- for(int i=0;i<args.length;i++)
- {
- System.out.println("input "+i+":"+args[i]);
- }
- }
- }
輸入:java GetGreeting 1 2 3
輸出
第六:命令行調用jar文件(帶參數)
類似第三步,使用命令 java -jar c:/temp/bin/test.jar 1 2 3
輸出結果與上圖一樣。
第七:命令行調用jar文件(jar文件代碼裏引用其他jar文件)
以連接數據庫爲例
將ConnDB.java放在c:/temp/bin中
- import java.sql.Connection;
- import java.sql.DriverManager;
- public class ConnDB
- {
- public static void main(String[] args)
- {
- String drive = "oracle.jdbc.driver.OracleDriver";
- String url = "jdbc:oracle:thin:@ip:1521:esd";
- String username = "scylla";
- String password = "******";
- try
- {
- Connection conn = null;
- Class.forName(drive);
- DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
- conn = DriverManager.getConnection(url,username,password);
- System.out.println("conn is:"+conn);
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
- }
- }
用javac編譯時需將classes12.jar包解壓縮放在bin中(否則編譯不通過,提示找不到package)
刪掉ConnDB.java,打jar包conn.jar
在bin中建立文件夾lib,將classes12.jar文件放在lib目錄中
修改conn.jar中META-INF/MANIFEST.MF
Class-Path: ./lib/classes12.jar(制定jar路徑)
Main-Class: ConnDB(注意冒號後面有一個空格,最後回車)
用java -jar c:/temp/bin/conn.jar 調用即可!