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

有帮助吗?

解决方案

Java API 有 用于操作 JAR 文件。

其他提示

当然:

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();

你可以使用Java的 压缩文件邮编条目 类来读取 JAR 文件的内容,然后使用 压缩输出流 创建一个新的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top