如何将.jar
转换为.war
文件格式。
基本上我想阅读file.jar
。但是当我在eclipse中导入时,它显然会导入为.class
个文件。我想以.java
格式阅读并阅读代码。
请帮助
答案 0 :(得分:1)
请记住.jar和.war是不同的文件格式。即使它们是压缩文件集,war文件也有standard organization structure。作为jar文件的地方很简单,文件的标准zip存档通常用作打包的二进制存档。你想要做的事情很难实现,而且没有直接的方法可以做到这一点。你必须手动完成。
答案 1 :(得分:1)
正如@Santosh所说,war和jar是相同的压缩(所以你可以将它重命名为jar并使用jar -x来解压缩它)但是内部组织是不同的。在我看来,你只想要删除java文件,所以解压缩就足够了......
mv file.war file.jar
jar xf file.jar
答案 2 :(得分:1)
如果您尝试将jar
转换为war
的原因仅仅是因为您希望能够在jar
中查看类的源代码,那么请尝试将它转换为war
不是正确的做法。
Java jar
(Java ARchive)文件就像一个zip文件,一个可以包含其他文件的存档。通常它将包含class
个文件(已编译的Java类)。 war
(Web ARchive)与jar
文件相同,但具有某种规定的目录结构,使其适合在Java EE应用程序服务器上进行部署。将jar
文件转换为war
文件将无法自动查看Eclipse中类的源代码。
要查看Eclipse中的源代码,您需要单独下载这些源代码。对于许多开源项目,您可以在单独的jar
中获取源代码。例如,对于库somelib.jar
,您可能会从您拥有该库的网站上找到somelib-sources.jar
或类似内容。
然后,在Eclipse中,右键单击作为依赖项附加到项目的jar
文件,然后从弹出菜单中选择“属性”。然后转到“Java Source Attachment”。输入...-sources.jar
的位置或包含源代码的目录,然后单击“确定”。
答案 3 :(得分:1)
您的陈述暗示您的file.jar
不包含Java代码。
我建议你。
不同的.jar
和.war
文件格式。它已经在之前的回答中。
如果您想阅读file.jar
中的代码,实际上您可以先对其进行反编译。有许多易于使用的Java反编译器。我建议您为此目的使用JD。