如何重建一个jar文件?

How rebuild a jar file?

我有一个 jar file 目录如下:

css/
images/
js/
META-INF/
atlassian-plugin.xml
jira_rtl.properties
LICENSE

我想更改 css 目录中的 file.css,然后重建 the jar 文件。

如何在 Windows 8.1 OS 中执行此操作?

使用 WinRAR(或类似软件)解压缩 .jar 文件并替换您需要的文件,然后重新压缩(使用 .jar 文件扩展名)。您可能需要将 [filename].jar 重命名为 [filename].zip,反之亦然。

一些存档器,如 7-zip 甚至可以让您直接从程序中进行编辑,并且在您保存编辑后,它会自动更新您的存档(在本例中为扩展名为 .jar 的 zip)。所以这比解压所有文件并重新打包更容易。

在极少数情况下,jar 中文件的顺序很重要(例如 OSGi 包),因此您必须小心。但我会说 99.9% 的顺序根本不重要。

Java ARchive (.jar) format is(只是)一个与.zip格式相同的压缩文件,这就是为什么可以这样做的原因。相同的 .zip 格式用于其他存档格式(例如 .swc 用于 ActionScript/Flash)

使用以下命令通过 Java 的 jar 实用程序更新文件,

<JAVA_HOME>/bin/jar -uvf <jar-file-name> <modified file path>

在你的例子中,假设 jar 文件名为 simple.jar,

<JAVA_HOME>/bin/jar -uvf simple.jar css/*