При обновлении файла pom.xml
использовать новую maven-compiler-version
, 3.6.0
и передачу опции -D=maven.test.skip=true
, тесты компиляция фактически не пропускается.Maven компилятора Plugin перекомпиляция тесты, имея maven.test.skip к истинным
На основе следующего образца POM ниже:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.sample</groupId>
<artifactId>sample-compiler</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.0</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
</project>
При установке версии на предыдущую 3.5.1
maven-compiler-plugin
будет эффективно пропустить тест компиляции при вызове:
mvn clean test -Dmaven.test.skip=true
бы произвести:
[INFO] --- maven-compiler-plugin:3.5.1:testCompile (default-testCompile) @ sample-compiler ---
[INFO] Not compiling test sources
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ sample-compiler ---
[INFO] Tests are skipped.
Однако, при обновлении Радинг его 3.6.0
и вызов ту же команда, что и выше, мы имеем:
[INFO] --- maven-compiler-plugin:3.6.0:testCompile (default-testCompile) @ sample-compiler ---
[INFO] Not compiling test sources
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to C:\data\eclipse-workspace\sample-compiler\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ sample-compiler ---
[INFO] Tests are skipped.
Примечания дополнительного Changes detected - recompiling the module!
значения, что maven.test.skip
флаг был фактически проигнорирован.
Вопрос: Это регресс или что-то не хватает в процессе выше?
Отмеченные в [MCOMPILER-284] (https://issues.apache.org/jira/browse/MCOMPILER-284). Может быть, регресс да. – Tunaki
@ Тунаки, да, я действительно понял это через несколько минут. Я должен был сначала проверить его JIRA, а не SO, мой плохой –
@Tunaki я должен удалить этот вопрос? –