Как настроить IntelliJ IDEA и / или Maven для автоматического добавления каталогов с исходным кодом Java, созданным с помощью jaxb2-maven-plugin?

В нашем проекте мы используем jaxb2-maven-plugin для генерации исходного кода Java из схемы XML, что приводит к тому, что нашему модулю Maven требуется дополнительный каталог исходного кода (в нашем случае target/generated/main/java). В последнее время я использую Eclipse и maven-eclipse-plugin для импорта всех проектов в рабочую область Eclipse. Плагин (каким-то образом) может автоматически добавлять каталог с сгенерированным исходным кодом в файл .classpath Eclipse.

Недавно я пытаюсь переключиться на (поиграть?) На IntelliJ IDEA 9 (так что я новичок в этой среде), и я заметил, что дополнительный исходный каталог не добавляется во время процесса импорта IDEA ...

Есть ли способ настроить IDEA / Maven для автоматического создания каталога импорта с сгенерированным исходным кодом?


person kopper    schedule 15.04.2010    source источник


Ответы (4)


Соглашение с Maven заключается в генерации кода в target/generated-sources/<tool>, например target/generated-sources/jaxb2

Следуйте этому соглашению, и IDEA добавит папку в качестве исходной папки (см. IDEA-53198).

person Pascal Thivent    schedule 15.04.2010
comment
Но что, если нам нужно установить собственное значение? Что, если каталог используется также с другим инструментом, выполняющим другой этап? В настоящее время у нас нет проблем с Eclipse, а с IDEA есть. - person dmatej; 27.06.2013
comment
@dmatej Можно указать местоположение для сгенерированных источников. См. Параметр «Папки сгенерированных источников» на странице jetbrains.com/idea/webhelp/maven- importing.html - person ᄂ ᄀ; 06.07.2014
comment
Обязательно используйте mvn idea: idea, чтобы убедиться, что это происходит после добавления модуля плагина mvn в ваш pom. - person Robert Massaioli; 21.06.2016
comment
mvn idea:idea решил проблему в моем случае. Спасибо. - person mmdemirbas; 06.06.2018

Сгенерированный код с использованием jaxb2-maven-plugin отсутствовал для меня в Intellij 2017.1, тогда как его создал Eclipse Neon. Исправлено из контекстного меню модуля, выбрав «Maven -> Создать источники и обновить папки».

person striker77    schedule 24.03.2017

Попробуйте использовать maven-jaxb2-plugin. Если не работает, значит проблема IDEA.

В Maven вы можете добавлять новые исходные корни для каждой конфигурации. Плагины Maven могут делать это программно. Это точно относится к maven-jaxb2-plugin. Тогда, если IDEA не распознает это, значит, проблема на той стороне.

person lexicore    schedule 15.04.2010

Вы можете использовать подключаемый модуль Maven Build Helper. Он находится по адресу http://www.mojohaus.org/build-helper-maven-plugin/

Это позволяет настроить дополнительные исходные корни. А интеграция IntelliJ с maven добавит новый исходный корень. Мы используем эту функцию во многих сборках, и она отлично работает. Протестировано с верс. 13 из IntelliJ IDEA.

person Andy Pah    schedule 17.05.2014