将 .class 转换为 .java

新手上路,请多包涵

我有一些 .class 文件需要转换为 .java 所以我做了:

 javap -c ClassName.class

而且我一直有同样的错误

ERROR:Could not find ClassName.class

你们知道可能是什么原因吗?我做了 man javap,据我所知,语法是正确的。如果有另一种方法可以将其转换为 .java 文件,我非常愿意尝试。

原文由 fabricemarcelin 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 357
2 个回答

调用 javap 读取字节码

javap 命令采用没有 .class 扩展名的类名。尝试

javap -c ClassName

将 .class 文件转换回 .java 文件

javap 然而不会给你java语法中方法的实现。它最多会以 JVM 字节码格式提供给您。

要实际 _反编译_(即,执行 javac 的反向操作),您必须使用适当的反编译器。例如,请参阅以下相关问题:

原文由 aioobe 发布,翻译遵循 CC BY-SA 3.0 许可协议

我猜测要么是类名错误 - 确保对所有包使用完全解析的类名 - 或者它不在 CLASSPATH 中所以 javap 找不到它。

原文由 duffymo 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题