Java Jar Ant включает папку - PullRequest
       12

Java Jar Ant включает папку

10 голосов
/ 19 февраля 2012

Мой вопрос: как я могу поместить файлы из подкаталога в мой jar через ant?Прямо сейчас мой код:

<jar destfile="${dist.dir}\wo42.jar" basedir="bin">
<manifest>
    <attribute name="Main-Class" value="org.alternativedev.wo42.App" />
    <attribute name="Class-Path" value="lib" />
</manifest>
<zipgroupfileset dir="lib/." excludes="natives/*" />
<fileset dir="data/." includes="." />

Он создает структуру типа

ROOT-Jar
-org
--bla
-filefromdata1
-filefromdata2

Но это должно быть

ROOT-Jar
-org
--bla
-data
--filefromdata1
--filefromdata2

Вы знаете, что я имею в виду?

Привет, BigTeddy

Ответы [ 2 ]

15 голосов
/ 19 февраля 2012

Измените последнюю строку на

<fileset dir="." includes="data/**" />

Нет необходимости копировать файлы вокруг.

Альтернативный способ (который полезен, если вы хотите, чтобы в каталоге был каталогдругое имя) будет

<zipfileset dir="data" includes="." prefix="folder-name-in-jar"/>
2 голосов
/ 19 февраля 2012

Сначала вы создаете нужную вам файловую структуру и копируете в нее все необходимые файлы. Затем вы запускаете команду jar в результирующем корневом каталоге.

Для копирования файлов вы можете использовать задачу ANT Например:

<copy todir="../dest/dir">
<fileset dir="." includes="data/**/*.java">
</fileset>

Подробнее о том, как упаковать баночку (основы) здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...