15

嗨,我正忙于反编译 jar 的应用程序,将文件粘贴到反编译的 jar 的文件夹中,然后将文件夹压缩到 jar 中。

反编译和复制工作,但我无法设法让文件夹内容被 jared(压缩成 jar),我做了大约 3 小时的研究,只发现了过时的方法。请帮忙。

-问候 marko5049

编辑更多信息:我很抱歉,我的意思是我无法让我的应用程序将文件夹转换为 jar 文件,我的应用程序是 jar 文件的修改安装程序。它会提取 jars 文件,然后添加修改,然后应该将文件夹转回 jar 文件,以便安装修改。jar 文件不可执行。

4

9 回答 9

13

这对我来说适用于 MAC OSX:

在包含 jar 文件的文件夹中打开终端并运行以下命令

 unzip mylib.jar -d jarfolder 

 //You can then change whatever you need and finally run the command below

 jar cvf mylib.jar -C jarfolder/ .
于 2018-10-12T05:37:51.023 回答
10

假设您想通过代码创建 JAR;你可以使用JarOutputStream它。此链接中有一个示例,其中包含创建 JAR 文件的代码,其中File[]包含所有输入文件。

至于在给定起始输入路径的情况下创建文件列表,请参阅Recursively list files in Java

您可以构建一个文件列表,然后只使用上面示例中的代码,或者您可以递归扫描文件并将它们添加到 JAR 中。

如果您使用的是 Java 7,并且您知道您的用户也是如此,那么您也可以使用Files.walkFileTree()FileVisitorJAR 访问文件时将条目添加到 JAR 中。


OP澄清之前的原始答案:

有什么问题吗:

jar cf my-application.jar folder1 folder2 folder3 etc

JDK 附带了一个jar用于创建 JAR 文件的实用程序。

您可以在此处阅读有关它的官方教程:创建 JAR 文件。这非常简单。

如果你想创建一个可运行的JAR,你可以创建一个包含主类和其他选项的清单文件。链接的教程描述了该过程。

于 2013-08-17T11:44:28.487 回答
7

简短的回答是,压缩文件夹,然后将其重命名为 JAR 文件。

于 2018-06-28T14:59:42.210 回答
3

对于 Windows,只需将文件夹制作为 winrar 文件。,

  • 为此,右键单击文件夹并单击“7 -zip”,然后
  • 选择“添加到文件夹名称.zip”。
  • 现在创建了一个具有相同文件夹名称的 rar 文件。
  • 然后在当前文件夹目录下打开cmd
  • 键入“mv 文件夹名.zip 文件夹名.jar”

现在您获得了包含相应文件夹的可执行 jar 文件。

于 2014-11-01T11:48:21.400 回答
2

制作它的最简单方法..将您的文件夹放入C:\Program Files\Java\jdk1.8.0_221\bin,然后从 CMD 到达相同的路径,然后运行它

jar cvf Name_your_jar.jar folder

于 2019-09-04T03:40:55.747 回答
1

以下命令在 Windows 10 和 jdk-8u212 中对我有用

jar cf my-application.jar folder1 folder2 folder3 etc
于 2019-06-05T15:08:49.493 回答
1

您可以将文件放在一个 zip 文件夹中。然后将 zip 文件转换为 Jar 格式。扩展名为 .jar 的文件是 Java Archive 格式的文件。它用于将大量文件存储到一个文件中。您可以尝试免费的在线文件转换器,而无需在计算机上下载新软件。Google 上有各种在线文件转换器。我建议将 zip 转换为 jar

我希望它有所帮助。

于 2019-07-03T10:07:47.333 回答
0

我建议尝试在 Windows 中创建一个常规的 .ZIP 文件。您需要获取 7-zip 才能查看您正在创建的 .JAR 文件。您只需将内容粘贴到 .ZIP 中,然后将文件类型从 .ZIP 重命名为 .JAR,这对我有用,我希望这对您有用。

.JAR 基本上是由 Oracle Java 客户端创建的 .ZIP,因此您需要特殊的文件查看软件,例如 7-zip 或 WinRAR 才能查看它。

您还可以通过重命名文件类型将 .JAR 恢复为 .ZIP。您可能必须使用 RegeEdit 或其他东西修改您的计算机才能重命名您的文件类型。

我希望这有帮助。

于 2019-12-26T16:08:37.820 回答
0

我刚刚发现这个问题,它的答案对您的问题更有用: 如何使用 java 压缩文件夹本身

2个提示:

1、jar就是zip。所以,你只需要压缩你的文件夹,并将其重命名为 jar

2、注意你应该在不改变文件相对路径的情况下压缩整个文件夹,而不是只提取所有的.class文件并将它们压缩在一起。因为运行jar的时候,class包应该和它的路径一致。

于 2018-12-22T02:20:50.437 回答