2

我目前的任务是在客户站点的 jar 中更新 XML 文件 (persistance.xml)。我当然可以解压缩文件,更新 xml,然后重新压缩文件以重新部署。我想在 Swing 应用程序中对这些命令行操作进行排序,以便执行此操作的人不必进入命令行。关于以编程方式执行此操作的任何想法?

4

3 回答 3

6

Java API 具有用于操作 JAR 文件的类。

于 2008-09-16T17:14:20.580 回答
3

当然:

File tmp = new File ("tmp");
tmp.mkdirs();
Process unjar = new ProcessBuilder ("jar", "-xf", "myjar.jar", tmp.getName ()).start();
unjar.waitFor();
// TODO read and update persistence.xml
Process jar = new ProcessBuilder ("jar", "-cf", "myjar.jar", tmp.getName()).start();
jar.waitFor();
于 2008-09-16T17:16:41.980 回答
1

您可以使用 Java 的ZipFileZipEntry类来读取 JAR 文件的内容,然后使用ZipOutputStream创建一个新文件。

于 2008-09-16T17:14:43.480 回答