【发布时间】:2010-09-09 15:11:17
【问题描述】:
我目前的任务是在客户站点的 jar 中更新 XML 文件 (persistance.xml)。我当然可以解压缩文件,更新 xml,然后重新压缩文件以重新部署。我想在 Swing 应用程序中对这些命令行操作进行排序,以便执行此操作的人不必进入命令行。关于以编程方式执行此操作的任何想法?
【问题讨论】:
标签: java jakarta-ee jboss jar
我目前的任务是在客户站点的 jar 中更新 XML 文件 (persistance.xml)。我当然可以解压缩文件,更新 xml,然后重新压缩文件以重新部署。我想在 Swing 应用程序中对这些命令行操作进行排序,以便执行此操作的人不必进入命令行。关于以编程方式执行此操作的任何想法?
【问题讨论】:
标签: java jakarta-ee jboss jar
Java API 有 classes 用于操作 JAR 文件。
【讨论】:
您可以使用 Java 的 ZipFile 和 ZipEntry 类来读取 JAR 文件的内容,然后使用 ZipOutputStream 创建一个新的。
【讨论】:
当然:
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();
【讨论】: