作者 主題: 如何打包可執行的 jar  (閱讀 4909 次)

0 會員 與 1 訪客 正在閱讀本文。

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
如何打包可執行的 jar
« 於: 2011-08-24 18:33 »
最近在弄一些 Java 小程式, 想說要打包成 jar
因為好久沒玩 Java, 所以先稍微測試了一下

引用
$ touch Play.java
$ sugedit Play.java &

代碼: [選擇]
// Play.java

public class Play {
  public static void main(String args[]) {
    System.out.println("Start!!");
  }
}


引用
$ javac Play.java
$ java Play
Start!!
$

Play 執行 OK,用 jar 打包起來..

引用
$ jar -cf Play.jar Play.class
$ ls -l *.jar
-rw-r--r-- 1 xxxxx xxxxx  739 2011-08-24 15:13 Play.jar
$
$ java -jar Play.jar
Failed to load Main-Class manifest attribute from
Play.jar
$

嗯~ 用 Main-Class manifest 當關鍵字爬了一下估狗
原來是 manifest 裡沒有指定 Main-Class
jar 預設的 manifest 是不會自動加上 Main-Class
所以打包時要另外加上去...

引用
$ jar -cfe Play.jar Play Play.class

第二個『Play』就是指定 Main-Class

引用
$ java -jar Play.jar
Start!!
$


這樣就可以跑 jar 了 ^_^