如果一个项目是分模块开发,那么打包成war包后的代码 是分别存在于不同模块的jar中!
如何替换掉jar中的一个.class文件呢!
1.先解压jar包
cmd进入对应的文件路径,jar -xf xxx.jar
2.替换掉.class文件
3.将解压后的文件打包成jar包
jar命令格式:jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名 文件名 文件名
-c 创建新的 JAR 文件包
-t 列出 JAR 文件包的内容列表
-x 展开 JAR 文件包的指定文件或者所有文件
-u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)
[vfm0M] 中的选项可以任选,也可以不选,它们是 jar 命令的选项参数
-v 生成详细报告并打印到标准输出
-f 指定 JAR 文件名,通常这个参数是必须的
-m 指定需要包含的 MANIFEST 清单文件
-0 只存储,不压缩,这样产生的 JAR 文件包会比不用该参数产生的体积大,但速度更快
-M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数
[jar-文件] 即需要生成、查看、更新或者解开的 JAR 文件包,它是 -f 参数的附属参数
[manifest-文件] 即 MANIFEST 清单文件,它是 -m 参数的附属参数
[-C 目录] 表示转到指定目录下去执行这个 jar 命令的操作。它相当于先使用 cd 命令转该目录下再执行不带 -C 参数的 jar 命令,它只能在创建和更新 JAR 文件包的时候可用。
举例:jar cvfM0 demo.jar com META-INF
com META-INF 是两个文件名
demo.jar 是我要打成的jar包