不幸的是,我被迫上传 WAR 文件作为我正在开发的 Web 应用程序的备份。
幸运的是,我有最新的 WAR 文件。我正在使用 Eclipse IDE,并使用 Web Tools 插件来完成我在动态 Web 应用程序项目中所做的所有 J2EE 工作。
当我导入 WAR 文件并在本地服务器上运行它时,一切正常。我遇到的问题是,在 Java Resources/src 文件夹中,我的所有包和 .java 文件现在只包含所有相同的包,但它们是空的。
我检查了是否可以找到这些文件,并在“导入文件”文件夹中找到了 .class 文件,该文件夹在 Eclipse Project Explorer 中无法访问。我相信我需要进行某种类型的构建或其他操作,以便我可以使用我的 .java 文件,但不幸的是,这是我所缺乏的一个领域。
我还想知道的一件事是,如果我有权访问 .class 文件,我是否能够获得 .java 源代码文件?
此外,我想像之前一样配置此环境,其中我的 Java Resources:src 文件夹包含包和 .java 文件。
最佳答案
One thing I would also like to know is, one way or the other, am I able to obtain the .java source code files if I have access to the .class files?
简短的答案是否定的。没有办法从字节码文件重新生成原始源文件。
如果您真的非常绝望,您可以尝试在字节码文件上使用 Java 字节码反编译器,但结果将与您的原始源代码完全不同。
- 所有评论和 javadoc 都将消失。
- 所有原始代码布局都将消失。
- 原始局部变量和参数名称可能会消失,具体取决于您原始的编译器开关。
- 常量表达式可能已被预先计算,循环、字符串连接和其他结构可能已被转换得无法识别。
- 根据反编译器的成熟度,Java 代码可能在语义上与原始代码不等效,甚至可能无法编译。
我希望您没有花费太长时间来开发此应用程序,因为最好的答案可能是重新开始。
关于java - 在 Eclipse 中导入 WAR 文件时出现问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2909531/