【java】修改jar文件,重新打包
问题:修改JAR包中的文件后,直接打包运行
步骤:
一、Java命令方式
1、解压缩jar文件
jar -xf jar文件
2、修改解压后后的文件
3、重新打包
jar -cvfm0 包名.jar META-INF/MANIFEST.MF ./
二、使用 ANT 脚本方式
1、build.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project default="package"> 3 <description> 4 Springboot jar 包解压后,修改文件再次打包 5 </description> 6 <property name="class.dir" location="./classes" description="解压后classes文件目录"/> 7 <property name="newjar.name" location="xxx-1.0.0.jar" description="新生成的jar文件名称"/> 8 <property name="sourcejar.name" location="old\xxx-1.0.0.jar" description="原始jar地址"/> 9 10 11 <target name="init"> 12 <delete dir="${class.dir}" /> 13 <mkdir dir="${class.dir}" /> 14 </target> 15 <!-- 主要Springboot jar 解药后重新打包,compress设置为false,否则打包不能启动 --> 16 <target name="package" depends="" description="将解压的jar文件重新打包"> 17 <jar destfile="${newjar.name}" 18 basedir="${class.dir}" 19 compress="false" 20 manifest="${class.dir}\META-INF\MANIFEST.MF"> 21 22 </jar> 23 </target> 24 <target name="unjar" depends="init" description="将解压的jar文件重新打包"> 25 <unjar dest="${class.dir}" src="${sourcejar.name}"> 26 27 </unjar> 28 </target> 29 </project>
2、解包和打包命令
# 解压命令 ant unjar #打包命令 ant package
好学若饥,谦卑若愚