Reputation: 2423
I'm using Maven in Eclipse for a modular Java project, and have managed to make Maven use the Eclipse compiler following the answer to this question.
However, the Maven test-compile
target fails with the error message
Failed to run the ecj compiler: Unrecognized option : --patch-module
which is quite surprising (actually unbelievable) because Eclipse is well up to patching modules.
Here's the pom.xml
for a MVE, consisting of a modular project patchmodule
:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>patchmodule</groupId>
<artifactId>patchmodule</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<compilerId>eclipse</compilerId>
<release>16</release>
<compilerArguments>
<properties>${project.basedir}/.settings/org.eclipse.jdt.core.prefs</properties>
</compilerArguments>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-compiler-eclipse</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>ecj</artifactId>
<version>3.31.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
The error kicks in as soon as you give the project a single test, such as
package patchmodule.test;
import static org.junit.jupiter.api.Assertions.*;
class Test {
@org.junit.jupiter.api.Test
void test() {
fail("Not yet implemented");
}
}
and then do a Maven install
, or any target that will invoke testCompile
.
Is this a bug (and if so, whose)? More importantly, is there a way to work around it? Any help is much appreciated.
Upvotes: 0
Views: 240