如何将文件夹转换为jar - Code

时间:2013-08-17 11:13:57

标签: java jar

我很忙于一个应用程序,它将一个jar文件粘贴到反编译jar的文件夹中,然后将文件夹压缩成一个jar。

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

-Regards marko5049

编辑更多信息: 我道歉,我的意思是我不能让我的应用程序将文件夹转换为jar文件,我的应用程序是jar文件的修改安装程序。然后,它会提取ja​​rs文件,然后添加修改,然后应该将文件夹重新转换为jar文件,以便安装修改。 jar文件不可执行。

9 个答案:

答案 0 :(得分:7)

鉴于您想通过代码创建JAR;您可以使用JarOutputStream。有一个示例at this link包含在给定包含所有输入文件的File[]的情况下创建JAR文件的代码。

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

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

如果您使用的是Java 7,而且您也知道自己的用户也是如此,那么您也可以Files.walkFileTree()使用FileVisitor,以便在访问文件时向JAR添加条目。

<小时/> OP澄清之前的原始答案:

是否有问题:

jar cf my-application.jar folder1 folder2 folder3 etc

JDK附带了jar实用程序来创建JAR文件。

您可以在此处阅读相关的官方教程:Creating JAR Files。这非常简单。

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

答案 1 :(得分:2)

这对我来说适用于MAC OSX:

在jar文件所在的文件夹中打开Terminal,然后运行以下命令

 unzip mylib.jar -d jarfolder 

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

 jar cvf mylib.jar -C jarfolder/ .

答案 2 :(得分:0)

for windows只需将文件夹设为winrar文件。

  • 要执行此操作,请右键单击该文件夹,然后单击“7 -zip”,然后单击
  • 选择“添加到foldername.zip”。
  • 现在使用相同的文件夹名称创建rar文件。
  • 然后打开当前文件夹目录中的cmd
  • 输入“mv foldername.zip foldername.jar”

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

答案 3 :(得分:0)

我刚刚发现了这个问题,它的答案对于您的问题更有用: how to zip a folder itself using java

2个提示:

1,一个罐子就是一个拉链。因此,您只需要压缩文件夹并将其重命名为jar

2,请注意,您应压缩整个文件夹而不更改文件的相对路径,而不仅仅是提取所有.class文件并将其压缩在一起。因为运行jar时,类包应与其路径保持一致。

答案 4 :(得分:0)

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

jar cf my-application.jar folder1 folder2 folder3 etc

答案 5 :(得分:0)

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

希望对您有帮助。

答案 6 :(得分:0)

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

jar cvf Name_your_jar.jar folder

答案 7 :(得分:0)

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

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

您还可以通过重命名文件类型将.JAR还原为.ZIP。您可能需要使用RegeEdit或其他功能来修改计算机,才能访问重命名文件类型。

我希望这会有所帮助。

答案 8 :(得分:-1)

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