Любой способ автоматически генерировать файл ant build.xml из Eclipse?

Из Eclipse я нашел , я могу легко экспортировать файл сборки Ant для моего проекта. Он содержит ссылки на сторонние библиотеки и некоторые базовые цели. Я использую его из моего файла глобальной сборки. Единственное, что меня беспокоит, заключается в том, что если что-то изменилось в структуре проекта (например, добавив новую стороннюю библиотеку), нам нужно подумать (да, может быть, иногда трудно) регенерировать этот файл build.xml. Мне интересно, может ли кто-нибудь здесь знать, как он автоматически обновляется. Под "автоматически" я подразумеваю, что нет необходимости явно запрашивать Eclipse для его регенерации каждый раз, когда это необходимо. Я не знаю, что может быть триггером, хотя...

Любые мысли или знания об этом?

Спасибо!

МДж

Ответ 1

Щелкните правой кнопкой мыши проект Eclipse, затем "Экспорт", затем "Общий", затем "Ant файлы сборки". Я не думаю, что можно настроить выходной формат.

Ответ 2

Я тоже пытался сделать то же самое. Я обнаружил, что "Export Ant Buildfile" запускается в файле org.eclipse.ant.internal.ui.datatransfer.AntBuildfileExportPage.java. Это находится в плагине org.eclipse.ant.ui.

Чтобы просмотреть источник, используйте перспективу Plug-in Development и откройте представление Plug-ins. Затем щелкните правой кнопкой мыши плагин org.eclipse.ant.ui и выберите import как > исходный проект.

Мой план состоит в том, чтобы создать программу Java для программного запуска генерации файла Ant и вызвать это в файле Ant каждый раз, когда я создаю, добавляя файл Ant к разработчикам моих проектов (Right- нажмите на предпочтениях на проекте, на вкладке сборщиков).

Ответ 3

У меня была та же проблема, наша рабочая среда основана на проектах Java Eclipse, и нам нужно было автоматически создать файл ANT, чтобы мы могли использовать сервер непрерывной интеграции (Jenkins, в нашем случае).

Мы выкатили наш собственный инструмент Eclipse Java до ANT, который теперь доступен на GitHub:

ant-build-for-java

Чтобы использовать его, вызовите:

java -jar ant-build-for-java.jar <folder with repositories> [<.userlibraries file>]

Первым аргументом является папка с репозиториями. Он будет искать папку рекурсивно для любого файла .project. Инструмент создаст build.xml в данной папке.

Необязательно, вторым аргументом может быть экспортированный файл .userlibraries, из Eclipse, необходимый, когда в любом из проектов используются библиотеки пользователей Eclipse. Инструмент тестировался только с пользовательскими библиотеками, используя относительные пути, как мы их используем в нашем репо. Это означает, что JAR и другие архивы, необходимые для проектов, находятся внутри проекта Eclipse и ссылаются оттуда.

Инструмент поддерживает только зависимости от других проектов Eclipse и от пользовательских библиотек Eclipse.

Ответ 4

Взгляните на файл .classpath в своем проекте, который, вероятно, содержит большую часть информации, которую вы хотите. Самый простой вариант состоит в том, чтобы свернуть собственный "build.xml export", т.е. Обработать .classpath в новый файл build.xml во время самой сборки, а затем вызвать его с помощью подзадачи ant.

Разбор немного XML-звуков намного проще для меня, чем для вхождения в Eclipse JDT.

Ответ 5

Если все, что вам нужно, это записи класса, я использую путь сборки eclipse следующим образом:

<xmlproperty file=".classpath" collapseAttributes="true" delimiter=";" />

Затем установите это значение в пути

<path id="eclipse.classpath">
    <pathelement path="${classpath.classpathentry.path}"/>
</path>


<target name="compile" depends="init">

    <javac srcdir="${src}" destdir="${build}" updatedProperty="compiled">
        <classpath refid="eclipse.classpath"/>
    </javac>
</target>

Ответ 6

Я тот, кто пожертвовал фильтр экспорта Ant для Eclipse. Я добавил функцию автоматического экспорта, но только для своего личного плагина eclipse2ant, который я все еще поддерживаю для координации исправлений ошибок.

К сожалению, у меня нет времени объединить его с официальными сборками Eclipse.

Ответ 7

  • Выберите Файл > Экспорт из главного меню (или щелкните правой кнопкой мыши имя проекта и выберите Экспорт > Экспорт...).
  • В диалоговом окне "Экспорт" выберите Общие > Ant Buildfiles следующим образом: введите описание изображения здесь

  • Нажмите Далее. В Generate Ant Buildfilesscreen:

    • Проверить проект в списке.
    • Снимите флажок "Создать цель для компиляции проекта с использованием компилятора Eclipse" - потому что мы хотим создать файл сборки, который не зависит от Eclipse.
    • Оставьте имя для Ant файла сборки по умолчанию: build.xml

введите описание изображения здесь

  • Нажмите Готово, Eclipse сгенерирует файл build.xml в каталоге проектов следующим образом:
    введите описание изображения здесь
  • Дважды щелкните файл build.xml, чтобы открыть его содержимое в редакторе Ant: введите описание изображения здесь

источник