Java打包

      在〈Java打包〉中有 1 則留言

指令編譯及執行

寫好的程式碼, 在NetBeans裏只要按F6即可執行. 但其實是NetBeans幫我們作了很多的事情.  如果沒有NetBeans, 那該如何手動執行呢.

先以下面的程式碼作說明

package jartest;
public class JarTest {
    public static void main(String[] args) {
        System.out.println("Java執行方式");
    }
}

此檔案名稱為 JarTest.Java. 若使用NetBeans撰寫, 會存於src目錄中. 此檔的package為jartest, 故實際位置為 jartest/JarTest.java, 如下所述

src--
     jartest--
              JarTest.Java

src為整個專案的根目錄. 若使用Linux或DOS指令操作, 需進行編譯及執行二個動作

編譯

若使用Windows系統, 於開始/執行, 執行cmd, 再進入src目錄執行如下指令

javac jartest/JarTest.java

請注意需連同package一起輸入, 且需輸入副檔名 .java. 上述若正確完成, 就會產生 .class檔. 此 .class檔即可 copy 給使用者執行使用.

執行

同樣進入src目錄中, 執行如下指令

java -jar jartest/JarTest

請注意, JarTest.class之副檔名 .class不可輸入

手動打包成jar

一個專案的完成, 通常是由多個 .class所集合而成的. 若將所有的 .class copy給使用者, 使用者根本不知道那一個 .class才是包含main的類別.

所以JDK提供 jar指令將所有的 .class 打包成以zip格式壓縮的 .jar檔案. 使用者只要使用如下指令即可

java -jar xxx.jar

單一class 打包方法

在src根目錄中, 產生一個文字檔, 檔名為 manifest.fm, 並輸入如下

Main-Class: jartest/JarTest
<enter>
<enter>

 請注意, 需有二行 enter, 否則會出錯

然後在src根目錄中, 輸入如下指令
jar cvfm test.jar manifest.mf jartest/JarTest.class

使用者只要輸入 java -jar test.jar 即可執行

 多個class 打包

將上面打包指令改成如下即可
jar cvfm test.jar manifest.mf jartest/*.class

NetBeans打包成jar

1.  在專案按右鍵/Properties/Build/Packing, 將Compress JAR File 打勾.
2. Run/Clean and Build Project

上述即會在 dist目錄下產生 .jar檔案. 直接copy給使用者始可執行

1 thought on “Java打包

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *