. У меня есть проект на основе Maven -, в который я пытаюсь добавить некоторые классы JAXB, автоматически сгенерированные плагином Maven «jaxb2 -maven -». Однако в моем первом разрезе я попал в круговой цикл зависимости:
Кажется, есть две очевидные возможности для решения этой проблемы:
/target
в /src/main/java
, чтобы ссылки на них не вызывали ошибок компиляции.Я что-то упустил здесь? Вариант #1 кажется плоским -нелепым... вот тольконе могубыть способом, которым люди используют JAXB. Вариант #2 кажется более рациональным, но все же достаточно неэффективным и громоздким.Мне действительно нужно взять на себя накладные расходы на совершенно отдельный проект только для того, чтобы использовать JAXB?
Существуют ли какие-либо более элегантные подходы, которые разработчики используют для ссылки на классы, сгенерированные JAXB -, в том же проекте, где их создает подключаемый модуль Maven?
ОБНОВЛЕНИЕ:По запросу, вот соответствующая часть моего POM:
org.apache.maven.plugins
maven-compiler-plugin
1.6
org.codehaus.mojo
jaxb2-maven-plugin
1.4
generate-sources
xjc
com.mypackage
Когда я запускаю mvn clean package
, я ДЕЙСТВИТЕЛЬНО вижу, что мои источники JAXB генерируются в подкаталоге /target
. Однако эти сгенерированные источники не добавляются автоматически в путь к классам на этапе компиляции.
ПОСТ -ОБНОВЛЕНИЕ РАЗРЕШЕНИЯ:Оказывается, мои проблемы с компиляцией больше связаны с тем, что я работал в Eclipse, а его интеграция с Maven имеет некоторые проблемы с «плагином jaxb2 -maven -». См. этот вопрос StackOverflow для получения более подробной информации об этой проблеме и ее решении.