-
Notifications
You must be signed in to change notification settings - Fork 0
Test changes
This page lists some noticeable changes in the tests.
Moved or added the following configuration parameters in the pom.xml
files of some tests:
- The
<outputDirectory>
and<testOutputDirectory>
parameters declared under<configuration>
moved to<build>
, because those properties are read-only in the configuration. - Many
<source>
and<target>
parameters have been either removed or replaced by<release>
. - For some tests using a non-modular JAR is a modular project,
<type>modular-jar</type>
has been added in the dependency declaration.
The plugin incremental compilation algorithm depends on the convention that
Java source files are located in directories of the same name as their package names,
with the .
separator replaced by path separator (/
or \
).
This is a very common convention, but not strictly required by the Java compiler.
For example, if the src/main/java/MyCode.java
file contains the package foo
statement,
the compiled class will be located in target/classes/foo/MyCode.class
— note the foo
additional directory.
In such case, the incremental build algorithm will not track correctly the changes.
The following tests have been made compliant with the convention for allowing the algorithm to work:
-
mcompiler-182
in integration tests.
Note that due to MCOMPILER-209, the old algorithm was compiling everything without really detecting change. So this issue is maybe not really a regression. To reproduce the old behavior, users can just disable the incremental compilation.
Removed the following directories and associated test methods:
-
compiler-one-output-file-test2
because it was redundant withcompiler-one-output-file-test
.
The only difference was the addition of include/exclude filters, but that difference had
no effect because the compiler mock used in this test was ignoring all sources anyway.
This test has been replaced by compiler-modular-project
.
The tests in the following directories were already disabled and have been removed:
-
MCOMPILER-197
because it ran only on Java 8 while the build now requires Java 17. -
groovy-project-with-new-plexus-compiler
because it ran only on Java 8 and the plexus compiler has been removed.
The tests in the following directores are not supported anymore and have been removed:
-
release-without-profile
because the plugin no longer try to chose automatically which parameters to use between--source
and--release
. This is justified by the fact that the plugin cannot run on Java 8. -
release-without-profile-fork
for the same reason as above.