Я только что прошел это упражнение с моим проектом NetBeans 7.0. Я смог скопировать файл build.properties из моего каталога .netbeans \ 7.0 в моей системе Windows и создать файл server.properties для моего сервера сборки. Это не так уж и сложно, поскольку у каждого разработчика build.properties могут отличаться, поэтому следует ожидать наличия другого файла для сервера. Затем я собрал простой файл server-build.xml, который ссылается на этот файл и выполняет только основы init, compile, dist и clean. Я поместил эти два файла в мой CVS-репозиторий на верхнем уровне моего каталога проекта, поскольку они не конфликтуют с другими файлами проекта и служат напоминанием в случае необходимости обновления. Теперь я могу построить свой проект на своем CI-сервере с помощью «ant -f server-build.xml», и все просто работает.
Весь мой раздел инициализации выглядит следующим образом, отдавая приоритет моим путям к серверу, но включая необходимую информацию из свойств проекта NetBeans.
<target name="init">
<property file="server.properties"/>
<property file="nbproject/project.properties"/>
</target>
Мне также пришлось сделать нечто подобное при определении задач ant для моих вложенных проектов:
<target name="compile">
<ant antfile="${project.MyProj-common}/build.xml" inheritall="false" target="jar">
<property location="${build.dir}" name="dist.ear.dir"/>
<property file="server.properties"/>
<property file="${project.MyProj-common}/nbproject/project.properties"/>
</ant>
...
</target>
Мне пришлось скопировать j2ee.platform.classpath из project.properties в мой файл server.properties, чтобы ссылки на j2ee.server.home были разрешены по мере необходимости. Я не ожидал, что это нужно сделать, но в противном случае путь к классу был неправильным, что привело к сбою сборки.
Спасибо за информацию по этому вопросу, поскольку она помогла мне найти решение.