Включить каталог в WAR, используя Ant - PullRequest
3 голосов
/ 09 января 2012

Я создаю файл войны с помощью ANT и хочу включить каталог src в файл войны. Когда я использую элемент fileset, включается только содержимое этой папки. Я хочу, чтобы каталог src был включен в папку WEB-INF. Я не хочу копировать исходники в папку WEB-INF на диске. Ant правильно включает файлы jar из моего каталога lib в WEB-INF/lib, не копируя их в мой проект.

Так что у меня будет что-то вроде этого:

/WEB-INF
/WEB-INF/src
/WEB-INF/classes
/WEB-INF/lib
/META-INF

Цель выглядит так:

<target name="war" depends="init">
    <war destfile="dist/web.war" webxml="WebContent/WEB-INF/web.xml">
        <fileset dir="WebContent"/>
        <lib dir="WebContent/WEB-INF/lib"/>
        <lib dir="lib"/>
        <classes dir="build/classes"/>
        <classes dir="config"/>
    </war>
</target>

1 Ответ

8 голосов
/ 09 января 2012

Полагаю, вы пытались включить src примерно так:

<fileset dir="src"/>

Это должно работать, если вы используете это:

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

Если вам нужно поместить файл или каталог по определенному пути в войне, вы можете использовать вместо него zipfileset и его префиксный атрибут, например,

<zipfileset dir="." includes="src/**" prefix="WEB-INF"/>

(См. Также примеры в документации к боевым задачам , которая включает использование zipfileset).

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