Maven проект с плагином JAXB2 не работает без Maven Clean

Мой проект Maven с плагином JAXB2 работает без ошибок, если я запускаю

mvn clean install

но всегда терпит неудачу, если я пропускаю чистую и бегу

mvn install

В этом случае сгенерированные классы не генерируются снова, что является правильным:

[INFO] No changes detected in schema or binding files - skipping JAXB generation.

Но затем я получаю ошибку компиляции, что сгенерированные классы и пакеты не могут быть найдены, когда остальные статические источники Java в этом проекте Maven скомпилированы:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project [...]: Compilation failure: Compilation failure:
[ERROR] [...] package [...] does not exist
[ERROR] [... ]cannot find symbol

Вот соответствующая часть моего pom.xml (остальное только зависимости):

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.2</version>
<executions>                    
    <execution>
        <id>xjc-core</id>
        <goals>
            <goal>xjc</goal>
        </goals>
        <configuration>
            <sources>
                <source>${project.basedir}/src/main/xsd/core</source>
            </sources>
            <packageName>com.example.core</packageName>
            <clearOutputDir>false</clearOutputDir>
        </configuration>
    </execution>
    <!-- ... and more <execution>  -->
</executions>               

Я прав, что единственное решение состоит в том, чтобы разделить статические источники и сгенерированные источники на разные модули Maven? Или есть другой способ?

1 ответ

Решение

В jaxb2-maven-plugin v2.2 есть ошибка https://github.com/mojohaus/jaxb2-maven-plugin/issues/35. Эта ошибка была исправлена ​​в v2.3

Другие вопросы по тегам