Лучший способ делегировать задание на генерацию Eclipse - через Ant Builder. Смотрите здесь о том, как настроить компоновщик.
В вашем файле build.xml
создайте 2 цели: generate-code
и cleanup-generated-code
.
Затем подключите их таким образом на вкладке Targets
строителя:
Это позволит вашему проекту хорошо реагировать на события.
Следующий шаг - заставить Eclipse автоматически скомпилировать ваши сгенерированные источники.
Для этого в корне вашего проекта создайте каталог с именем generated-src
. Этот каталог должен быть пустым, и вы должны поставить его под управление вашей системы контроля версий. Поскольку будет сгенерированный код, поместите файл .xxxignore в этот каталог.
Как только каталог generated-src
будет на месте, сделайте его исходным каталогом вашего проекта (вкладка Source в Java Build Path)
И последнее, но не менее важное: вы хотите отключить Java-компилятор Eclipse, как только вы сгенерировали свои исходные коды. Для этого вам нужно изменить вкладку Refresh
вашего Ant Builder.
Вот настройка, которая делает это:
Когда вы нажимаете кнопку Specify Resources
, убедитесь, что выбран весь каталог вашего проекта, как здесь:
Таким образом, когда что-то в вашем проекте изменяется, он запускает компоновщик муравьев, который может или не может регенерировать источники, что приведет к перекомпиляции Java.
Один последний скриншот. Убедитесь, что и build.xml
, и базовый каталог относительно вашего $ {workspace_loc} на вкладке Builder Main
, как здесь (в основном используется только кнопка Browse Workspace
):
Как только это будет сделано, подключите generate-code
и cleanup-generated-code
к своим обычным целям в ваших build.xml
, которые вы бы вызывали для сборок из командной строки. Таким образом, Eclipse и ваша сборка из командной строки делают точно такие же шаги для генерации кода. Более того, ваша сборка Eclipse будет полностью зависеть от реальных источников вашего проекта.