如何从命令提示符下将jar反编译为.java文件

Kar*_*una 8 java command-line command-prompt

如何从命令提示符下将JAR(.class二进制文件)反编译为.java源文件?

ent*_*erd 8

我发现jd-cmd可以很好地完成这项工作,并且可以在多个文件的子文件夹中递归工作。要在命令行上反编译一组文件,请运行以下命令:

  1. 此处下载jAR文件作为jd-cmd README.md文件
  2. 创建输出Java文件所在的目录。
  3. 运行命令以反编译文件:java -jar jd-cli.jar -od <my-output-folder> <my-input-folder>


Siw*_*申思维 6

2021 年,命令行似乎更简单:

反编译target.jar到jar_result文件夹,并输出带级别的日志ALL

$ jd-cli target.jar -od jar_result -g ALL
Run Code Online (Sandbox Code Playgroud)


ifl*_*ly6 5

JD -CMD GitHub 项目声称能够做到这一点。然而,我认识的大多数人都使用JD-GUI

\n
\n

JD-Core 是一个从一个或多个 \xe2\x80\x9c.class\xe2\x80\x9d 文件重建 Java 源代码的库。JD-Core可用于恢复丢失的源代码并探索Java运行时库的来源。支持 Java 5 的新功能,例如注释、泛型或类型 \xe2\x80\x9cenum\xe2\x80\x9d。JD-GUI和JD-Eclipse包含JD-Core库。

\n
\n

我应该包括,当编译源文件时,变量分配和这些变量的名称之类的事情都会发生变化。类似地,语法糖会变成它实际的样子(例如x += i变成x = x + i)。

\n