Java 将.jar转换为.war

Java 将.jar转换为.war,java,eclipse,class,jar,war,Java,Eclipse,Class,Jar,War,如何将.jar转换为.war文件格式 基本上我想读取文件.jar。但是当我在eclipse中导入时,它显然是作为.class文件导入的。我想读入.java格式并阅读代码 请帮助请记住.jar和.war是不同的文件格式。即使它们是压缩的文件集,war文件也有一个压缩包。其中,jar文件是一个简单的标准zip归档文件,通常用作打包的二进制归档文件。你想做的事情很难实现,而且没有直接的方法。您必须手动执行此操作 正如@Santosh所说,war和jar是相同的压缩(因此可以将其重命名为jar并使用ja

如何将
.jar
转换为
.war
文件格式

基本上我想读取
文件.jar
。但是当我在eclipse中导入时,它显然是作为
.class
文件导入的。我想读入
.java
格式并阅读代码


请帮助

请记住.jar和.war是不同的文件格式。即使它们是压缩的文件集,war文件也有一个压缩包。其中,jar文件是一个简单的标准zip归档文件,通常用作打包的二进制归档文件。你想做的事情很难实现,而且没有直接的方法。您必须手动执行此操作

正如@Santosh所说,war和jar是相同的压缩(因此可以将其重命名为jar并使用jar-x解压),但内部组织不同。在我看来,您只是想找出java文件,所以解压缩就足够了

mv file.war file.jar
jar xf file.jar

如果您尝试将
jar
转换为
war
的原因仅仅是因为您希望能够看到
jar
中类的源代码,那么尝试将其转换为
war
是不正确的

Java
jar
(Java存档)文件就像一个zip文件,一个可以包含其他文件的存档。通常它将包含
class
文件(编译的Java类)。
war
(Web存档)与
jar
文件相同,但具有特定的指定目录结构,适合在javaee应用服务器上部署。将
jar
文件转换为
war
文件不会自动使您能够在Eclipse中查看类的源代码

要在Eclipse中查看源代码,您需要分别下载这些源代码。对于许多开源项目,您可以在单独的
jar
中获取源代码。例如,对于库
somelib.jar
,您可以从获取库的网站上找到
somelib sources.jar
或类似的内容


然后,在Eclipse中,右键单击作为依赖项附加到项目的
jar
文件,并从弹出菜单中选择属性。然后转到“Java源代码附件”。输入
…-sources.jar的位置或包含源代码的目录,然后单击OK。

您的语句意味着您的
文件.jar
不包含Java代码

这是我给你的建议

  • 不同的
    .jar
    .war
    文件格式。这已经在前面的答案上了

  • 如果要从
    文件.jar
    中读取代码,实际上可以先对其进行反编译。有许多易于使用的Java反编译器。我建议你用这个


  • .jar是否包含.java源代码文件?如果是这样,Eclipse应该向您展示它们。您可以通过解压打开jar文件进行检查。如果没有,就没有来源。。。这与.war有什么关系?如果源代码是开源的,你可以从网上下载源代码,也可以使用反编译器。你问题的第一句和第二句表明你可能对
    war
    文件有错误的理解。将
    jar
    转换为
    war
    不会帮助您查看类的源代码。