2014-10-30 6 views
1

Я работаю над проектом java, где я использую ant как инструмент сборки.Исключая банки проекта зависимости во время сборки муравьев

Предположим, у меня есть два проекта X и Y, и оба они взаимозависимы. Я ищу кое-что, где я могу исключить некоторые баночки во время сборки, а когда я построю проект A, он должен исключить некоторые банки во время сборки и во время создания войны.

Я знаю, что если мы хотим, чтобы включать и исключать банки из пути к классам мы даем

<include> and <exclude> 

в build.xml файла. Но как мы это делаем, когда хотим включить или исключить банки, которые находятся за пределами проекта.

Любая помощь приветствуется.

Я упомянул ниже, но не мог понять. Excluding jars from dynamically generated classpaths?

ответ

0

Наконец-то я смог найти решение моего вопроса. Представляю ответ, думая, что он может быть полезен кому-то в будущем. Мне удалось заставить его работать, используя задачу <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> задачу, которая будет удалять войны файл каждый раз, когда проект построен. Поэтому старый файл войны не был заменен, и он не показывал мне никаких изменений. После того, как я включил удаление, он начал удалять предыдущий файл войны и обновлял новый, который работал очень хорошо.

Смежные вопросы