MyEclipse將Java項目打包成jar文件的三種方法

方案一:用Eclipse自帶的Export功能java

 

步驟1:準備主清單文件 「MANIFEST.MF」,eclipse

因爲是打包引用了第三方jar包的Java項目,故須要自定義配置文件MANIFEST.MF,在該項目下創建文件MANIFEST.MF,內容以下:工具

Manifest-Version: 1.0
Class-Path: lib/commons-codec.jar lib/commons-httpclient-3.1.jar lib/commons-logging-1.1.jar lib/log4j-1.2.16.jar lib/jackson-all-1.8.5.jar
Main-Class: main.KillCheatFans

第一行是MAINIFEST的版本,第二行Class-Path就指定了外來jar包的位置,第三行指定咱們要執行的MAIN java文件。ui

這裏要注意幾點:spa

複製代碼

一、Class-Path: 和Main-Class: 後邊都有一個空格,必須加上,不然會打包失敗,錯誤提示爲:Invalid header field;

二、假設咱們的項目打包後爲KillCheatFans.jar,那麼按照上面的定義,應該在 KillCheatFans.jar的同層目錄下創建一個lib文件夾(即lib文件和打包的jar文件
在同一個目錄下),並將相關的jar包放在裏面。不然將會出現「Exception in thread "main" java.lang.NoClassDefFoundError」的錯誤;

三、Main-Class後面是類的全地址,好比你的主文件是KillCheatFans.java,文件裏打包爲package com.main; 那麼這裏就寫com.main.KillCheatFans,
不要加.java後綴,主文件地址寫錯將會出現「找不到或沒法加載主類」的錯誤;

四、寫完Main-Class後必定要回車(即最後一行是空白行),讓光標到下一行,這樣你生成的jar包才能找到你的主class去運行,

不然將會出現「jar中沒有主清單屬性」的錯誤。

步驟2:右擊Java工程選擇Export—>選擇JAR file—>Next.net

步驟3:選擇要打包的文件,不須要的文件沒必要打包,減少打包後的jar文件大小,並進行選項配置以下插件

這裏有幾個選項:命令行

* Export generated class files and resources 表示只導出生成的.class文件和其餘資源文件
* Export all output folders for checked projects 表示導出選中項目的全部文件夾
* Export java source file and resouces 表示導出的jar包中將包含你的源代碼*.java,若是你不想泄漏源代碼,那麼就不要選這項了
* Export refactorings for checked projects 把一些重構的信息文件也包含進去

步驟4:選擇咱們在第一步中自定義的配置文件路徑,這一步很重要,不能採用默認選項code

這裏解釋一下配置項:圖片

* Generate the manifest file:是系統幫咱們自動生成MANIFEST.MF文件,若是你的項目沒有引用其餘class-path,那能夠選擇這一項。
* Use existing mainfest from workspace:這是能夠選擇咱們自定義的.MF文件,格式如上所寫,引用了第三方包時選用。
* Seal content:要封裝整個jar或者指定的包packet。
* Main class:這裏能夠選擇你的程序入口,未來打包出來的jar就是你這個入口類的執行結果。

最後Finish,即生成了咱們要的jar文件。

運行該jar文件有兩種方式:

1. 在命令行下運行命令java -jar 你的jar文件名稱,好比個人執行以下:

若是在jar中有一些System.out.prinln語句(如上執行結果),運行後不想在控制檯輸出而是保存在文件中方便之後查看,能夠用一下命令:
java -jar KillCheatFans.jar > log.txt (這時命令行窗口不會有任何輸出)
輸出信息會被打印到log.txt中,固然log.txt自動生成,並位於和KillCheatFans.jar一個目錄中。

2. 新建一個批處理文件,如start.bat,內容爲:java -jar KillCheatFans.jar,放在jar文件同一目錄下便可,之後點擊自動運行便可,更加方便。

 

方案二:安裝Eclipse打包插件Fat Jar

 

方案一對於含有較多第三方jar文件或含有第三方圖片資源等就顯得不合適,太繁瑣。這時可使用一個打包的插件—Fat Jar。

     Fat Jar Eclipse Plug-In是一個能夠將Eclipse Java Project的全部資源打包進一個可執行jar文件的小工具,能夠方便的完成各類打包任務,咱們常常會來打jar包,可是eclipse自帶的打包jar彷佛不太夠用,Fat Jar是eclipse的一個插件,特別是Fat Jar能夠打成可執行Jar包,而且在圖片等其餘資源、引用外包方面使用起來更方便。


安裝方法:

1. Eclipse在線更新方法
Help > Install New Software > Add,
name:Fat Jar
location:http://kurucz-grafika.de/fatjar

2. Eclipse插件手動安裝方法
下載地址:http://downloads.sourceforge.net/fjep/net.sf.fjep.fatjar_0.0.27.zip?modtime=1195824818&big_mirror=0
將解壓出的plugins中的文件複製到eclipse安裝目錄中的plugins目錄下,而後重啓eclipse便可。

使用方法:

步驟1:右擊工程項目選擇Buile Fat Jar

 

步驟2:配置jar文件存放目錄,主Main文件等,以下圖

 

步驟3:選擇所要用到的第三方jar包

 

最後Finish,即生成了咱們要的jar文件,十分方便。

方案三:用Eclipse自帶的Export功能

runnable jar file,而不是jar file(個人myeclipse版本是6.5,沒有這個runnable jar file選項)

選擇「package required libraries into generated jar 」 這 一項就是把你項目當中須要的jar包一塊兒打到你要打的jar文件中。

cmd執行jar文件:java -jar 將須要執行的jar文件拖進去,回車,就ok了。

相關文章
相關標籤/搜索