Eclipse, ant и пользовательские задачи
Извините, я не страшно переживаю с Ant.
Мне нравится функция eclipse "Export ant buildfile", но мне нужно вставить несколько пользовательских задач (копирование файлов, вычисление контрольных сумм, которые используются во время выполнения и т.д.).
Как интегрировать пользовательские задачи ant с antfile, который экспортирует Eclipse? Кроме того, как только я это сделаю, внутренняя сборка (Run...) подберет ее или мне всегда придется использовать внешний файл ant для сборки с этого момента?
О, и я не хочу редактировать build.xml, который экспортируется из Eclipse, потому что я хотел бы иметь возможность его регенерировать позже.
Edit/Update:
Мне потребовалось некоторое время, чтобы понять, что происходит, поэтому я подумал, что я бы добавил здесь некоторые заметки, чтобы уточнить.
Когда вы создаете новый ant файл в своем каталоге и помещаете <?eclipse.ant.import ?>
в первую строку своего пользовательского ant script (я назвал my test.xml), в следующий раз вы экспортируете файл сборки из Eclipse в этот каталог, он увидит этот тег и добавит <import file="test.xml"/>
С помощью этого Импорта цели в вашем "Пользовательском" файле (test.xml) станут действительными целями в экспортированном файле build.xml(или любом другом имени, которое вы выбрали при его экспорте).
После этого в любое время, когда вы выбираете "build.xml" в Eclipse, панель целей также будет включать в себя цели из "test.xml"
Кроме того, после этого вы можете войти в свои свойства проекта /Builders и добавить новый конструктор типа "Ant Build", а затем выбрать цели для создания, очистки и т.д.
Ответы
Ответ 1
Фильтр экспорта ant будет содержать любой файл xml в том же каталоге, который имеет специальный
<?eclipse.ant.import?>
как его первый дочерний элемент.
Пример:
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse.ant.import?>
<project name="project" default="default" basedir=".">
...
</project>
Теперь Eclipse будет включать следующую строку в build.xml
:
<import file="custom_build.xml"/>
Ответ 2
Если вы пишете свой собственный Ant script, вы можете написать свои собственные цели, которые используют Ant task для делегирования к сгенерированному build.xml.
Кроме того, вы можете настроить проект "строители" (свойства проекта "Строители" ) для запуска любого другого при создании проекта вручную или автоматически.
Ответ 3
У вас может быть отдельный файл сборки ant для этих задач. Это все, что вам нужно.
Ответ 4
PDE поддерживает пользовательские обратные вызовы из сгенерированного файла build.xml в свой собственный ant script.
Скопируйте файл "templates/plugins/customBuildCallbacks.xml" из org.eclipse.pde.build в вашей установке eclipse и установите "customBuildCallbacks = true" в файле build.properties.
См. также Страница справки Eclipse