Java jar打包工具使用方法步驟解析
java的jar是一個(gè)打包工具,用于將我們編譯后的class文件打包起來,這里面主要是舉一個(gè)例子用來說明這個(gè)工具的使用。
在C盤下的temp文件夾下面:
有一個(gè)com.pack.surfront的package 這個(gè)package下面有一些已經(jīng)class文件如:Test1.class,Test2.class,Test3.class,其中Test1.class下有一個(gè)可執(zhí)行文件。
我們打開cmd,然后cd temp到temp文件夾下面,因?yàn)閏om.pack.surfront是包路徑,不需要再進(jìn)去然后再打包,打包的時(shí)候必須要把這個(gè)包也打進(jìn)去,否則的話打出來的包中的類將無法訪問了。
進(jìn)去之后執(zhí)行命令: jar cvf hello.jar com
然后按enter鍵即可,解釋一下,這個(gè)jar是jdk下的一個(gè)命令,然后cvf是三個(gè)參數(shù),在cmd下直接輸入jar即可參看一下這個(gè)命令的介紹,這里不說這個(gè)(其實(shí)是我也沒查過!icon_lol.gif )
hello.jar是打出來的包的名稱,這個(gè)是可以隨便取的。com是那個(gè)包的頂端路徑。這個(gè)命令執(zhí)行完之后就會在temp路徑下面生成一個(gè)hello.jar文件,我們可以用rar解壓縮文件解壓他,可以看到其中有一個(gè)META-INF的目錄,該目錄下有一個(gè)MANIFEST.MF文件,打開該文件,可以看到
Manifest-Version: 1.0 Created-By: 1.6.0_26 (Sun Microsystems Inc.)
這兩行內(nèi)容,一般如果從外面引用這個(gè)jar里面的類和方法有這些就足夠了,但是我的Test1.class文件里面還有一個(gè)main方法,我想打完包之后可以執(zhí)行這個(gè)jar,那么還需要一些其他的配置,我們在上面的文件內(nèi)容中添加一行,添加完之后文件全部內(nèi)容如下:
Manifest-Version: 1.0 Created-By: 1.6.0_26 (Sun Microsystems Inc.) Main-Class: com.pack.surfront.Test1
第三行就是指定了一個(gè)主類,說明該類中存在main方法,那么之后這個(gè)jar就可以執(zhí)行了。注意那一行一定要把完整的class文件的路徑寫全,不然會提示找不到該類的。
把這個(gè)文件改成這樣了之后把這個(gè)MANIFEST.MF文件拿出來放在temp目錄下面,然后把剛才生成的hello.jar和解壓后的其他文件全都刪除。然后重新打包一次
這時(shí)候temp目錄下面應(yīng)該是這樣的結(jié)構(gòu):原來的com文件夾,我們修改后的MANIFEST.MF文件,這時(shí)候在cmd下執(zhí)行: jar cvfm hello.jar MANIFEST.MF com看出來有什么不同了沒?一個(gè)是將原來的cvf改成cvfm,然后再hello.jar后添加了一個(gè)MANIFEST.MF她的意思就是指打包的時(shí)候不再生成(m參數(shù)的功能)MANIFEST.MF文件,而是把我們指定的mf文件打包進(jìn)去。執(zhí)行這個(gè)命令之后就完事了。然后在cmd下面執(zhí)行:
java -jar hello.jar這個(gè)時(shí)候main方法就會執(zhí)行,如果他需要什么參數(shù)則直接放在后面即可。和直接執(zhí)行java Test 參數(shù) 是一樣的。OK,就到這里吧。如果如果覺得我說的不好敬請留言拍磚@!icon_lol.gif
添加使用的jar包:
Class-Path: commons-beanutils.jar commons-collections.jar commons-digester.jar commons-logging.jar commons-validator.jar jakarta-oro.jar struts-legacy.jar
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. XML入門的常見問題(四)2. 無線標(biāo)記語言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)第1/2頁3. WMLScript的語法基礎(chǔ)4. ASP中if語句、select 、while循環(huán)的使用方法5. xml中的空格之完全解說6. html小技巧之td,div標(biāo)簽里內(nèi)容不換行7. ASP中解決“對象關(guān)閉時(shí),不允許操作?!钡脑幃悊栴}……8. ASP動態(tài)網(wǎng)頁制作技術(shù)經(jīng)驗(yàn)分享9. msxml3.dll 錯(cuò)誤 800c0019 系統(tǒng)錯(cuò)誤:-2146697191解決方法10. 解決ASP中http狀態(tài)跳轉(zhuǎn)返回錯(cuò)誤頁的問題
