Ho un progetto che deve accedere alle risorse all'interno del proprio file JAR. Quando creo il file JAR per il progetto, vorrei copiare una directory in quel file JAR (suppongo che l'equivalente ZIP possa "aggiungere" la directory al file ZIP esistente). Voglio solo che la copia avvenga dopo che il JAR è stato creato (e ovviamente non voglio che la copia accada se pulisco ed elimini il file JAR).Come si copiano i file in un JAR esistente con Ant?
Attualmente il file di generazione si presenta così:
<?xml version="1.0" encoding="UTF-8"?>
<project name="foobar" basedir=".." default="jar">
<!-- project-specific properties -->
<property name="project.path" value="my/project/dir/foobar" />
<patternset id="project.include">
<include name="${project.path}/**" />
</patternset>
<patternset id="project.jar.include">
<include name="${project.path}/**" />
</patternset>
<import file="common-tasks.xml" />
<property name="jar.file" location="${test.dir}/foobar.jar" />
<property name="manifest.file" location="misc/foobar.manifest" />
</project>
Alcune delle attività di compilazione sono chiamati da un altro file (common-tasks.xml), che non riesco a visualizzare qui.
Perché non aggiungere le risorse solo quando si crea il file JAR? Questo è quello che faccio in build dove ho file JAR che includono risorse non di codice al loro interno. – Eddie
Poiché l'attività definita per la creazione del file JAR è definita in un altro file che non posso modificare. – troyal
Questo lo farebbe! Oh bene. Sono felice che altri abbiano risposto in modi che risolvono il tuo problema. – Eddie