Скопируйте файлы и папку в WEB-INF, используя Ant - PullRequest
4 голосов
/ 28 марта 2012

Я хочу скопировать файл .properties из определенного места в мою папку WEB-INF / classes / com / infiniti (в файле WAR).

Я прошел по этой ссылке Как заставить Ant скопировать файл свойств в каталог классов используя который я могу скопировать файл .properties в WEB-INF / classes / , но не в WEB-INF / classes / com / infiniti

Код, который я использую:

<war destfile="${deploy}/acc.war" webxml="${warSrc}/web/WEB-INF/web.xml">
            <lib dir="${lib}">
.......
.......
.......
            <classes dir="${configHome}/config/com/infiniti">
                <include name="accredit.properties" />
            </classes>

...
....
.......
</war>

Также мне нужно скопировать папку $ {configHome} / resources / com / infiniti / errorcode в WEB-INF / классы / ком / Инфинити .

Возможно ли это с помощью Ant?

Ответы [ 2 ]

9 голосов
/ 28 марта 2012

да, вы можете использовать, например, ZipFileSet вот так

<war destfile="${deploy}/acc.war" webxml="${warSrc}/web/WEB-INF/web.xml">
...
    <zipfileset dir="${configHome}/config/com/infiniti" includes="**/*.properties" prefix="WEB-INF/classes/com/infiniti"/>
0 голосов
/ 28 марта 2012

Да, это возможно с помощью муравья. Просто используйте команды копирования или синхронизации для перемещения вашего файла:

<copy todir="${distribution}/location" file="${local.path}/data/file.txt">
</copy>

Вы также можете скопировать с правилами:

<copy includeemptydirs="false" todir="${combined.bin}">
  <fileset dir="${buildbin}"/>
  <fileset dir="${output2buildbin}"/>
  <fileset dir="${output3buildbin}"/>
</copy>

Использование синхронизации:

<sync includeemptydirs="false" todir="${distres}">
  <fileset dir="${buildres}">
    <include name="logging/**" />
  </fileset>
</sync>

Задачи описаны на их сайте документации:

http://ant.apache.org/manual/Tasks/copy.html

Тот же декларативный набор файлов применяется к военному заданию:

Examples

Assume the following structure in the project's base directory:

thirdparty/libs/jdbc1.jar
thirdparty/libs/jdbc2.jar
build/main/com/myco/myapp/Servlet.class
src/metadata/myapp.xml
src/html/myapp/index.html
src/jsp/myapp/front.jsp
src/graphics/images/gifs/small/logo.gif
src/graphics/images/gifs/large/logo.gif

then the war file myapp.war created with

<war destfile="myapp.war" webxml="src/metadata/myapp.xml">
  <fileset dir="src/html/myapp"/>
  <fileset dir="src/jsp/myapp"/>
  <lib dir="thirdparty/libs">
    <exclude name="jdbc1.jar"/>
  </lib>
  <classes dir="build/main"/>
  <zipfileset dir="src/graphics/images/gifs"
              prefix="images"/>
</war>

will consist of

WEB-INF/web.xml
WEB-INF/lib/jdbc2.jar
WEB-INF/classes/com/myco/myapp/Servlet.class
META-INF/MANIFEST.MF
index.html
front.jsp
images/small/logo.gif
images/large/logo.gif

http://ant.apache.org/manual/Tasks/war.html

...