次の組み合わせを実行しようとしています:
- メイヴン (3.6.1)
- OpenJDK 11
- module-info.java を使用
Fails with the following error message:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project tourconex: Fatal error compiling: Fa
iled to run the ecj compiler: Unrecognized option : --module-version -> [Help 1]
空の compilerArgs ノードを追加しようとしましたが、役に立ちませんでした。
module-info.java を削除すると問題は解決しますが、それは私が望んでいることではありません。
また、ソースhttp://central.maven.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.8.1/を見ました
特に CompilerMojo.java のソース:
module-version は常に追加されるため、これを抑制する方法はないようです:
compilerArgs.add( "--module-version" );
compilerArgs.add( getProject().getVersion() );
ecj のドキュメントを見ると、「module-version」引数がありません
というわけで、今のところうまくいかないようです!?
Maven プラグイン セクション:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<compilerId>eclipse</compilerId>
<source>11</source>
<target>11</target>
<release>11</release>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-compiler-eclipse</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>ecj</artifactId>
<version>3.17.0</version>
</dependency>
</dependencies>
</plugin>