実行すると、JAXB2 プラグインを使用した Maven プロジェクトはエラーなしで動作します
mvn clean install
しかし、クリーンをスキップして実行すると常に失敗します
mvn install
この場合、生成されたクラスは再度生成されません。これは正しいです。
[INFO] No changes detected in schema or binding files - skipping JAXB generation.
しかし、この Maven プロジェクトの残りの静的 Java ソースをコンパイルすると、生成されたクラスとパッケージが見つからないというコンパイル エラーが発生します。
[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 モジュールに分離することです。それとも他に方法はありますか?