【问题标题】:Convert .jar to .war将 .jar 转换为 .war
【发布时间】:2012-01-16 13:35:54
【问题描述】:

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

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

请帮忙

【问题讨论】:

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

标签: java eclipse class jar war


【解决方案1】:

请记住 .jar 和 .war 是不同的文件格式。即使它们是压缩文件集,war 文件也有 standard organization structure 。 jar 文件很简单,通常用作打包的二进制存档文件的标准 zip 存档文件。您尝试做的事情很难实现,并且没有直接的方法可以做到这一点。您将不得不手动进行。

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

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

      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 源附件”。输入...-sources.jar 的位置或其中包含源代码的目录,然后单击确定。

      【讨论】:

        【解决方案4】:

        您的陈述暗示您的file.jar 不包含Java 代码。

        这里我建议你。

        1. .jar.war 文件格式不同。它已经在以前的答案中了。

        2. 如果你想从你的file.jar读取代码,其实你可以先反编译。有许多易于使用的 Java 反编译器。为此,我建议您使用JD

        【讨论】:

          猜你喜欢
          • 2018-10-31
          • 1970-01-01
          • 1970-01-01
          • 2017-05-17
          • 1970-01-01
          • 2023-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多