如何将.jar
转换为.war
文件格式。基本上我想要读file.jar
。但是当我在eclipse中导入时,它显然会导入为.class
文件。我想阅读.java
格式并阅读代码。将.jar转换为.war
请帮忙
如何将.jar
转换为.war
文件格式。基本上我想要读file.jar
。但是当我在eclipse中导入时,它显然会导入为.class
文件。我想阅读.java
格式并阅读代码。将.jar转换为.war
请帮忙
请记住.jar和.war是不同的文件格式。尽管它们是一组压缩文件,但战争文件有一个standard organization structure。作为一个jar文件,简单地说就是一个标准的压缩档案文件,通常用作打包的二进制档案。你试图做的事情很难实现,并且没有直接的方法来做到这一点。你必须手动完成。
正如@Santosh所说,war和jar是相同的压缩(所以你可以将它重命名为jar并使用jar -x来解压缩它),但内部组织是不同的。在我看来,像你只是想捞出java文件,解压缩这样就够了......
mv file.war file.jar
jar xf file.jar
如果你正在尝试转换jar
为war
的原因仅仅是因为你希望能够要查看jar
中类的源代码,然后尝试将其转换为war
不是正确的做法。
一个Java jar
(Java ARchive)文件就像一个压缩文件,一个可以包含其他文件的压缩文件。通常它将包含class
文件(编译的Java类)。 A war
(Web ARchive)与jar
文件相同,但具有特定的指定目录结构,使其适合在Java EE应用程序服务器上部署。将jar
文件转换为war
文件不会自动使您能够在Eclipse中查看类的源代码。
要在Eclipse中查看源代码,您需要分别下载这些源代码。对于许多开源项目,您可以在单独的jar
中获得源代码。例如,对于图书馆somelib.jar
,您可能会在找到图书馆的网站上找到somelib-sources.jar
或类似的东西。
然后,在Eclipse中,右键单击附加到您的项目作为一个依赖的jar
文件,并从弹出菜单中选择属性。然后转到“Java源附件”。输入...-sources.jar
的位置或包含源代码的目录,然后单击确定。
您的陈述意味着您的file.jar
不包含Java代码。
在这里,我建议你。
迥异.jar
和.war
文件格式。它已经在上一个答案。
如果您想从file.jar
中读取代码,实际上您可以先反编译它。有很多易于使用的Java反编译器。我建议你为此使用JD。
.jar是否包含.java源代码文件?如果是这样,Eclipse应该给你看。您可以通过解压缩来打开jar文件进行检查。如果没有,那么没有消息来源......这和.war有什么关系? – Thilo
如果你的源代码是开源的,或者使用反编译器,你可以从网上下载源代码。 – aishwarya
您的问题的第一句和第二句表明您可能对“war”文件的错误概念。将'jar'转换为'war'不会帮助您查看类的源代码。 – Jesper