使用jar命令創建可執行的jar包

使用jar命令創建可執行的jar包


1、創建可執行的jar包。
手工寫manifest.mf文件(jar命令自動生成的MANIFEST.MF文件中不會包含Main-Class屬性),舉例說明:
目錄結構:

mymanifest.mf //該文件可以隨意放置,只要在執行jar命令時指定mymanifest.mf文件所在位置.
- src
  
- test
   
Test. class


test.Test代碼:

1  package  test;
2  public   class  Test {
3       public   static   void  main(String[] args) {
4          System.out.println( " HelloWorld! " );
5      }
6  }


mymanifest.mf文件內容:

Manifest - Version:  1.0
// 該屬性是創建可執行jar包必需的,指定的Main-Class爲全路徑類名(且該類必需有main方法)
Main - Class: test.Test
Created
- By: wiflish


在src目錄下執行:

jar cvfm test.jar .. / mymanifest .

完成後會在src目錄下生成一個test.jar文件。由於沒有可視化界面,雙擊test.jar將會看到沒反應。
在命令行執行java -jar test.jar就會得到輸出HelloWorld!

這時就完成了基本的創建可執行的jar包。

2、創建要依賴其他包的可執行jar包。
這時只要更改mymanifest.mf文件加入:

Manifest - Version:  1.0
// 該屬性是創建可執行jar包必需的,指定的Main-Class爲全路徑類名(且該類必需有main方法)
Main - Class: test.Test
// 該屬性指定依賴包的路徑(路徑是相對jar包所在路徑)
Class - Path: lib / swing - layout - 1.0 .jar  // 這裏舉例說明,隨便用的包
Created - By: wiflish


目錄結構:

- src
  
- test
   
TestDepends. class //假設該類執行依賴於 swing-layout-1.0.jar,具體代碼略。
 
testDepends .jar
  
- lib
    swing
- layout - 1.0 .jar


雙擊testDepends .jar就能正確執行,如果 TestDepends .jar包所在的當前目錄下沒有lib/swing-layout-1.0.jar的話,如下目錄結構:

- src
  
- test
   
TestDepends. class   // 假設該類執行依賴於 swing-layout-1.0.jar,具體代碼略。
  testDepends.jar
雙擊testDepends.jar,將會報Could not find the main class, Program will exit.
在命令行執行 java -jar testDepends.jar,就會得到找不到TestDepends.class中所依賴的類的錯誤.
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章