修改 jar 包中文件¶
注意:以下操作假设 jar 包名 hello.jar .java 名 hello.java .class 名 hello.class
1 步骤一:反编译 jar 包¶
- 使用反编译工具反编译 hello.jar 包(推荐 IDEA 和 jd-gui)
- 从反编译后的文件中找到需要修改的 hello.class 文件,拷贝其内容,新建 hello.java 文件,将拷贝内容粘贴进去
- 修改 hello.java 文件中内容
2 步骤二:.java 文件生成.class 文件¶
- 将 hello.java 文件和原 hello.jar 包放在同一目录下,执行以下命令,将会在当前目录生成 hello.class 文件 (与 hello.java 文件同名)
javac -cp hello.jar hello.java
3 步骤三:打包 jar 包¶
- 复制 jar 包到另一目录下,将 hello.jar 改名 hello.zip 并解压
- 将步骤二生成的 hello.class 文件替换目录下的 hello.class 文件
- 在解压目录下执行以下命令,将会生成 hello.jar 文件
# hello.jar 指定生成jar包名 META-INF hello 是解压hello.zip中得到的文件夹名称(所有文件夹名都要列出)
jar -cvfM0 hello.jar META-INF hello