重新编译JD-GUI从jar中反编译出来的java文件

问题描述 投票:0回答:2

我有一个 MyFile.jar 文件。我使用 JD-GUI 对其进行反编译,并使用其“保存所有源”选项将文件保存为 .zip 文件。现在提取 .zip 文件并编辑 .java 文件。

.zip文件解压后的文件夹结构是这样的

                       _____ META-INF(folder)
source(folder) -------|     
                      ------com(folder)-->example--->App---> all .java files   

现在我如何将它重新编译回 .jar 文件?

java jar compilation recompile jd-gui
2个回答
0
投票

如您的问题所述,您已将类文件反编译为java文件并进行了必要的修改。

希望您已将其作为项目导入到 Eclipse 中。导出与 jar 相同。需要注意的一点是,你应该知道构建项目的依赖关系


0
投票

要将编辑后的Java文件重新编译回.jar文件,可以使用Java编译器(javac)将.java文件编译成.class文件,然后使用jar命令将编译后的文件生成新的.jar文件.class 文件。

步骤如下:

  • 打开终端或命令提示符并导航到已编辑的 .java 文件所在的目录。

  • 使用以下命令将.java文件编译成.class文件:

    javac -d 。来源/com/example/App/*.java

该命令会编译source/com/example/App目录及其子目录下的所有.java文件,并将编译后的.class文件保存在当前目录(.)下。

  • 使用以下命令创建一个新的 .jar 文件:

    jar cvf MyFile.jar com META-INF

此命令将创建一个名为 MyFile.jar 的新 .jar 文件,其中包含 com 和 META-INF 目录。

您现在应该有一个新的 .jar 文件,其中包含您编辑的 Java 代码。

© www.soinside.com 2019 - 2024. All rights reserved.