【发布时间】:2018-05-13 22:41:10
【问题描述】:
我想将我在 jgrasp 中编写的 java 程序导入到 eclipse 中,但我尝试做的事情没有成功,所以我决定从 eclipse 中删除该文件,以为我仍然会将它保存在我从中导入的文件夹中文件来自。但是,我很快发现这只是一起删除了我的程序。我使用 EaseUs 数据恢复来恢复我删除的文件,但它只能恢复 .class 文件。我阅读了如何将 .class 文件反编译回 .java 文件,并决定访问一个名为 javadecompilers.com 的站点。我在我拥有的其他项目上对其进行了测试,并且效果很好。我附加了 .class 文件并将其反编译回 .java 文件。但是,当我尝试附加已恢复的类文件时,它不起作用,并且出现此错误:
无法加载指定的类: org.benf.cfr.reader.util.CannotLoadClassException: HangmanGame.class - org.benf.cfr.reader.util.ConfusedCFRException: Magic != Cafebabe for class file 'HangmanGame.class'
如果我在记事本中打开类文件,我可以清楚地看到它不是空的,那么为什么我的所有恢复程序都会出现此错误。有什么办法可以将它们转换回 .java 文件?谢谢。
【问题讨论】:
-
有可用的反编译器,包括免费的和商业的,而且通常更好的是更昂贵的,但它们并不完美,它们当然不会给你可读的变量,但它可以'尝试其中一种免费的不会有什么坏处。如果它不起作用,那么最好的办法就是重新编写代码。
标签: java eclipse class decompiler