java項目打包部署

網上打包的教程不少, 可是本身動手總歸出現各類各樣的問題,本身總結下:html

因爲剛剛接觸JAVA,作了一個簡單的java project 項目, 可是包含第三方的jar包, 結果打包的時候就出現問題了。 java

主要緣由是一直報「Exception in thread "main" java.lang.NoClassDefFoundError「的錯誤, 我一開始覺得打包的jar包中應該包含第三方的JAR包,結果死活報錯,原來並非這樣,運行jar包時,會根據 MANIFEST.MF中的Class-Path 的路徑去讀取。spa

好了,說下打包流程.net

1. 先看下文檔目錄和最後打包的效果htm

 

能夠看到,打包完後,第三方jar並不在程序包內。blog

 

2. 配置MANIFEST.MF文件,程序打包時會用到。教程

  2.1 在項目下新健一個文件夾ip

  2.1 在該文件夾下新健一個MANIFEST.MF文件, 配置對應的屬性文檔

 

 

3. 打包程序, 不包含第三方JAR包io

  3.1 點擊 file > export

  3.2 選擇 jar file, 點擊next

  3.3 選擇 項目打包文件,錄入一個生產jar的路徑(只須要項目文件, 不包含第三方jar以及MANIFEST.MF; 同時也不包含.classpath 和.project)

  3.4  點擊選擇已經存在的裝配單

  

  3.5 一直到結束

 

4. 經過java -jar xxx.jar 來運行,  可是這裏須要注意要關聯第三方Jar包, 怎麼關聯, 會程序會經過 MANIFEST.MF中的Class-Path去尋找。因此最終要運行jar報的結構以下。

 

 

做爲剛學JAVA的人會有點小折騰。

 

參考資料
http://www.open-open.com/lib/view/open1397303218919.html

http://www.cnblogs.com/lanxuezaipiao/p/3291641.html

http://bbs.csdn.net/topics/350163956

相關文章
相關標籤/搜索