Исключая фляги проекта зависимости во время сборки муравья
Я работаю над проектом Java, где я использую муравей в качестве инструмента сборки.
Предположим, у меня есть два проекта X и Y, и оба они взаимозависимы. Ищу какую-то вещь, где я могу исключить некоторые банки во время сборки, т.е. когда я собираю проект А, он должен исключить некоторые банки во время сборки и при создании войны.
Я знаю, что если мы хотим включить или исключить банки из пути к классам, мы даем
<include> and <exclude>
в файле build.xml. Но как нам это сделать, когда мы хотим включить или исключить банки, которые находятся за пределами проекта.
Любая помощь приветствуется.
Я сослался на ниже, но не мог понять. Исключая банки из динамически генерируемых путей к классам?
1 ответ
Наконец я смог найти решение своего вопроса. Отправляю ответ, думая, что это может быть полезно для кого-то в будущем. Я смог заставить его работать, используя <exclude>
задача. Ниже приведен фрагмент кода.
<target>
<delete dir="${dest.dir}" failonerror="false" />
<mkdir dir="${dest.dir}" />
<war destfile="${package.file}" webxml="${temp.dir.web-inf}/web.xml" basedir="${temp.dir}">
<fileset dir="${pages.dir}"/>
<lib dir="${lib.dir}">
<exclude name="servlet-api.jar"/>
<include name="de.vogella.build.test.ant.jar"/>
</lib>
<classes dir="${temp.dir.classes}" />
</war>
</target>
Причина, по которой это не сработало для меня в начале, заключалась в том, что я не включил <delete>
задача, которая удаляла бы военный файл каждый раз при сборке проекта. Таким образом, старый файл войны не был заменен, и он не показывал мне никаких изменений. Как только я включил удаление, он начал удалять предыдущий файл сборки сборки и обновлять его новым, который работал очень хорошо.