问题:
我用dex2jar工具反编译了apk文件,但当我用jd-gui反编译前面操作获得的jar文件的时,能很完美地看到大部分类反编译后的代码,但有一部分类不能显示出来--constants类,仅仅显示了错误:“// INTERNAL ERROR //”,并且没能反编译出任何东西,请问还有什么办法恢复constants这个类成java代码文件吗?
Anyone passing by this question should look at this instead: https://github.com/deathmarine/Luyten
Using this instead of jd-gui, I was able to successully view all code which showed as INTERNAL ERROR on jd-gui.
You can also try Jadx: https://github.com/skylot/jadx
答案:请去github地址:https://github.com/deathmarine/Luyten,下载反编译工具,用这个工具代替jd-gui,我能够成功反编译所有之前用jd-gui无法反编译的文件,也可以用Jadx: https://github.com/skylot/jadx试试,祝你好运,反正我的搞定了,特此记录经验,分享给大家
英文简单,简要翻译,只是希望能有所帮助。
ps:我用的是luyten工具,本工具提供有.exe后缀的可执行文件,也有.jar版本,读者可以在https://github.com/deathmarine/Luyten地址找一下,不想下载源码的朋友可以用它们,但我不知道它们是否是最新的。所以我下载的是源码来运行工具,为了方便,你可以到我的github:https://github.com/langtianya/Luyten下载,因为我添加了两个依赖的包。
看原版:http://stackoverflow.com/questions/17643825/using-java-decompiler-jd-gui-and-getting-internal-error
作者:ouchuquan
出处:http://www.cnblogs.com/langtianya/p/5140226.html
https://github.com/deathmarine/Luyten
解压后,运行 mvn install 进入target目录,exe,jar都可运行。