Domanda

Attualmente ho il compito di aggiornare un file XML (perstance.xml) all'interno di un jar presso la sede di un cliente.Ovviamente posso decomprimere il file, aggiornare l'xml, quindi rejar il file per la ridistribuzione.Vorrei eseguire queste operazioni da riga di comando in un'app Swing in modo che la persona che le esegue non debba passare alla riga di comando.Qualche idea su come farlo a livello di programmazione?

È stato utile?

Soluzione

L'API Java ha classi per manipolare file JAR.

Altri suggerimenti

Sicuro:

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

Puoi usare Java File zip E ZipEntry classi per leggere il contenuto di un file JAR, quindi utilizzare ZipOutputStream per crearne uno nuovo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top