首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用JD-GUI实现Java文件的批量反编译

用JD-GUI实现Java文件的批量反编译
EN

Stack Overflow用户
提问于 2009-09-06 00:53:13
回答 5查看 54.3K关注 0票数 33

我正在寻找一个程序来批量反编译Java类。我发现了JAD,但它不支持Java的一些新特性,这个程序的好处是它可以从命令行执行并自动生成*.java文件。

我还找到了JD-GUI。它支持Java的大部分特性,但缺点是不能进行批处理。您需要使用程序打开类文件,然后单击保存。

有没有办法让JD-GUI像JAD一样进行批处理?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-09-06 01:23:43

JD-GUI的命令行反编译是一个highly requested特性,但它还没有实现。也许您可以在此期间使用以下解决方法:

  • 使用“文件”--“保存jar源文件”菜单选项来保存JAR源代码。它会从你的归档文件中反编译所有的类,并将它们的源代码保存到另一个压缩文件中。

不幸的是,我还没有看到任何好的具有命令行支持的开源JD-GUI替代方案,所以我认为就目前而言,以上就是最好的选择。

票数 58
EN

Stack Overflow用户

发布于 2009-12-16 15:06:13

我可以推荐将Jad与JadRetro结合使用--当然,它不能让Jad生成java泛型,但反编译的源代码(包括Java 1.5+类)在功能上与原始源代码等效(并且在大多数情况下是可反向编译的)。

它的用法很简单:

jadretro *.class

jad .class

备注:

  1. JadRetro可以像这样在批处理模式下使用: jadretro ...
  2. 如果你使用的是jad v1.5.8e (而不是最新的v1.5.8g),那么"-c“选项应该传递给jadretro (否则jad将拒绝反编译Java 1.5+类)。
票数 3
EN

Stack Overflow用户

发布于 2014-02-11 04:12:43

看起来您可以使用命令行,然后按CTRL+ALT+s/CTRL+w每个选项卡来快速保存/关闭一大堆库来启动GUI。它不是自动化的,但在反编译一堆依赖项时是可以容忍的。(请注意,"^“只是在Windows中执行多行命令的一个技巧。)

代码语言:javascript
复制
"c:\jd-gui-0.3.6.windows\jd-gui.exe" ^
 c:\my-libs\lib-a.jar ^
 c:\my-libs\lib-b.jar ^
 c:\my-libs\lib-c.jar ^
 c:\my-libs\lib-d.jar ^
 c:\my-libs\lib-e.jar
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1384619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档