資源描述:
《jar包和war包的打包規(guī)范》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、CMD模式下實現(xiàn)jar打包注意包名以及manifest.mf文件每一個冒號有空格最后一行為空1、編譯java文件2、寫manifest.mf文件Manifest-Version:1.0Main-Class:<空格>package.class//指定主類,目的是如果有main函數(shù)能夠直接運行Class-Path:包含的其他jar包中間空格間隔如果有多個jar包且不能為jar包中的jar包。是需要在包里面包含的本地包lib/edd/.<換行>最后一行為空行保存注意:沒有添加主清單屬性則不能夠直接通過java–jar包名.jar運行文件Cmd下執(zhí)行jar–cvfm
2、name.jarmanifest.mf文件.class這種情況是打包沒有package名的.class文件。jar{ctxu}[vfm0Mi][jar-文件][manifest-文件][-C目錄]文件名?jarcvfmclasses.jarmymanifest.mf-Cfoo/.文件夾下所有類打包foo為文件夾。這種是打包有包名的.class。應為這種情況下編譯會產(chǎn)生cn.mypackage的情況因此在manifest文件中會寫出,而且也需啊把包的文件夾放在與manifest同一個位置再打包運行即可運行即是java–jarname.jar;這種情況必須要有m
3、anifest文件。不然不能執(zhí)行main函數(shù)含有多個java編譯文件,屬于同一個包的打包。也是上訴方法,將其編譯到一個包文件夾中,然后編譯運行即可。Jar包的導入(CMD下使用)只需要將包放入到classpath對應的文件夾下,然后使用importcn.ddd.class即可。如下:importcn.mypackage.Testjar;//但是這種情況下用類需要把全名寫出來不然不能訪問,也就是說importcn.mypackage.*;寫法是錯誤的publicclasstestcout{publicstaticvoidmain(String[]args){T
4、estjart=newTestjar();t.display();}}運行輸出:Eclipse下實現(xiàn)jar包的打包Eclipse的jar包打包同樣需要多個過程1、選擇包右鍵選擇導出jarfile2、3、選擇要導出的文件1、2、選擇自己的manifest或者生成的manifest選擇主類,實現(xiàn)直接運行。然后finish即可關(guān)于生成自己的manifest.mf文件問題這種情況下是使用了第三方的jar包的情況。因此系統(tǒng)生成manifest文件不可用,需要自行生成manifest文件。Manifest-Version:1.0Class-Path:lib/common
5、s-codec.jarlib/commons-httpclient-3.1.jarlib/commons-logging-1.1.jarlib/log4j-1.2.16.jarlib/jackson-all-1.8.5.jarMain-Class:main.KillCheatFans1、Class-Path:和Main-Class:后邊都有一個空格,必須加上,否則會打包失敗,錯誤提示為:Invalidheaderfield;2、假設我們的項目打包后為KillCheatFans.jar,那么按照上面的定義,應該在KillCheatFans.jar的同層目錄下建
6、立一個lib文件夾(即lib文件和打包的jar文件在同一個目錄下),并將相關(guān)的jar包放在里面。否則將會出現(xiàn)“Exceptioninthread"main"java.lang.NoClassDefFoundError”的錯誤;也就是說這個文件加下具有manifest文件以及l(fā)ib文件,lib中存放有第三方的jar包。3、Main-Class后面是類的全地址,比如你的主文件是KillCheatFans.java,文件里打包為packagecom.main;那么這里就寫com.main.KillCheatFans,不要加.java后綴,主文件地址寫錯將會出現(xiàn)“找
7、不到或無法加載主類”的錯誤;4、寫完Main-Class后一定要回車(即最后一行是空白行),讓光標到下一行,這樣你生成的jar包才能找到你的主class去運行,否則將會出現(xiàn)“jar中沒有主清單屬性”的錯誤。注意eclipse下的文件最好都利用工程的file系統(tǒng)建立,不然會出現(xiàn)讀取不到文件資源以上情況下若想使用eclipse打包。需要在工程下建立文件夾放置第三方包(eclipse裝載包的方法三)。然后工程文件夾下新建一個MANIFEST.MF文件寫入配置信息。這樣保證了裝有第三方包的文件與MANIFEST.MF處于一個文件夾內(nèi),這樣編譯不會出現(xiàn)問題。然后再進行
8、打包即可Eclipse生成jar包含有第三方jar包