當你拿到乙個jar檔案並且希望替換掉jar中的某乙個class檔案,你應該怎麼做呢?
以test.jar為例,放到c:/test目錄下面,dos視窗切換到這個目錄,執行命令:jar xf test.jar,那麼你的所有的檔案多解壓到當前目錄
然後替換對應的檔案
在重新打包:jar cvf test.jar ., 其中最後乙個.號表示將當前目錄下的所有檔案打包成test.jar.(記得把原來的test.jar先刪除掉)
另外就是你的jar可能會有乙個meta-inf的目錄,下面有乙個manifest.mf檔案,這個檔案是配合jar工作的,當你的jar是可執行的,該檔案記錄你執行的一些引數:
manifest-version: 1.0
ant-version: apache ant 1.8.2
created-by: 1.6.0_23-b05 (sun microsystems inc.)
main-class: com.ssc.cm.report.writer.reportwriter
class-path: lib/activation-1.1.jar lib/arialfont-1.0.jar lib/bcmail-jd
k14-1.38.jar lib/bcprov-jdk14-1.38.jar lib/bctsp-jdk14-1.38.jar lib/c
ommons-beanutils-1.8.3.jar lib/commons-collections-3.2.1.jar lib/comm
ons-digester-2.1.jar lib/commons-logging-1.1.1.jar lib/dom4j-1.6.1.ja
r lib/edtftpj-1.5.3.jar lib/f1j-11.0.jar lib/groovy-all-2.0.6.jar lib
/itext-4.2.0.jar lib/j2ssh-core-0.2.9.jar lib/jasperreports-4.5.1.1.j
ar lib/jasperreports-extensions-3.5.3.jar lib/jcommon-1.0.15.jar lib/
jfreechart-1.0.12.jar lib/jta-1.1.jar lib/jxl-2.6.12.jar lib/log4j-1.
2.17.jar lib/mail-1.4.1.jar lib/ojdbc14-10.2.0.2.jar lib/pdf-renderer
-1.0.5.jar lib/quartz-1.8.5.jar lib/slf4j-api-1.7.2.jar lib/slf4j-log
4j12-1.7.2.jar lib/soap-2.3.1.jar lib/spring-beans-3.2.0.release.jar
lib/spring-core-3.2.0.release.jar lib/xml-apis-1.0.b2.jar /usr/local/
ccms/security/jclass/pwm/pwmatrix.jar
這裡設定了入口函式以及使用到的類庫.
如果用上面的命令,會發現你的manifest.mf檔案是:
manifest-version: 1.0
ant-version: apache ant 1.8.2
,會導致你的jar執行出錯,所以需要使用:
jar cvfm test.jar manifest.mf . cvfm中的m表示設定manifest.mf,最後的.號含義同上.
jar命令的使用
color red 應該如何打jar包?color 1.jar 命令的用法如下 jar vfm0m jar 檔案 manifest 檔案 c 目錄 檔名 其中 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的乙個,它們分別表示 c 建立新的 jar 檔案包 t 列出 jar 檔案...
jar 命令使用
1 jar命令一般用來對jar包檔案處理,jar包是由jdk安裝目錄 bin jar.exe命令生成的,當我們安裝好jdk,設定好path路徑,就可以正常使用jar.exe命令,它會用lib tool.jar工具包中的類。此處以jdk1.8.0 181版本為例,語法 jar vfmn0pme jar...
jar打包命令使用
用法 jar vfmn0pme jar file manifest file entry point c dir files 選項 說明 如果任何檔案為目錄,則對其進行遞迴處理 清單檔名,檔案檔名和入口點名稱的指定順序與 m f 和 e 標記的指定順序相同 示例1 將兩個類檔案歸檔到乙個名為 cla...