All the base POMs in the world.
basepom.site.scm.checkout-directory
and basepom.site.scm.try-update
to control local site scm checkout.basepom.install.skip
and basepom.deploy.skip
to control deployment and installation.basepom.dependency-management.allow-versions
and basepom.dependency-management.allow-exclusions
.basepom.javadoc.exclude-package-names
to exclude specific package names from javadoc generation.basepom.test.groups
and basepom.it.groups
to select specific test groups for execution.Note This is the first release that is fully documented.
basepom.license.header
to control the checked file license headerbasepom.gpg.use-agent
to control GnuPG agent usebasepom.site.skip-deploy
and basepom.site.scm.skip-deploy
to control site deployment.report-integration
site report to the basepom.invoker.reporting
plugin.project.build.sourceVersion
and project.build.targetVersion
with the more compatible maven.compiler.source
and maven.compiler.target
setting.basepom.build.use-incremental-compilation
to basepom.compiler.use-incremental-compilation
.basepom.test.fork-count
from 1.0C
to 0.75C
.basepom.it.parallel
and basepom.failsafe.fork-count
with basepom.it.fork-count
with a default of 0.5C
.basepom.failsafe.timeout
with basepom.it.timeout
.initialize
to the process-test-classes
phase. Too bad that there is no pre-test
.basepom.site.fail-javadoc
for site generation, default is ${basepom.check.fail-javadoc}
.basepom.it.timeout
for test execution.basepom.check.skip-javadoc
again; javadoc does not really align to the checkers (except for failure), generation is often controlled separately.<pluginManagement>
section.java.security.egd
setting for unit tests is no longer needed (since Java 8).Bump invoker plugin to 3.3.0 (from 3.2.2)
Bump pmd plugin to 3.17.0 (from 3.16.0)
Bump failsafe plugin to 3.0.0-M7 (from 3.0.0-M6)
Bump surefire plugin to 3.0.0-M7 (from 3.0.0-M6)
Bump site plugin to 4.0.0-M2 (from 4.0.0-M1)
Bump enforcer plugin to 3.1.0 (from 3.0.0)
Bump release plugin to 3.0.0-M6 (from 3.0.0-M5)
Bump assembly plugin to 3.4.1 (from 3.3.0)
Bump spotbugs plugin to 4.7.1.0 (from 4.7.0)
Bump pmd to 6.47.0 (from 6.45.0)
Bump checkstyle to 10.3.1 to (from 10.2)
Bump spotbugs to 4.7.1 (from 4.7.0)
spotbugs now supports multiple exclusion files. This version changes the default exclusion setup in the minimal
and oss
:
Old:
<excludeFilterFile>spotbugs/spotbugs-suppress.xml</excludeFilterFile>
New:
<excludeFilterFiles>
<excludeFilterFile>spotbugs/spotbugs-suppress.xml</excludeFilterFile>
</excludeFilterFiles>
If a project supplies its own spotbugs exclusion file, it can no longer rely on overwriting the default file by setting the excludeFilteFile
property but must do
<excludeFilterFiles combine.children="overwrite">
<excludeFilterFile>... new exclusion files ...</excludeFilterFile>
</excludeFilterFiles>
Otherwise, the default exclusion file will be loaded in addition to any project specific files. There are only very few exclusions (see this file for a full list) so this might not be a big problem.
basepom.site.check.skip-*
properties to basepom.site.skip-*
properties.src/it
folder to activate invoker integration test profiles (maven limitation)This release finally updates the dependency plugin post 3.1.2, thus enabling Java 17 support. However, the behavior with test dependencies has changed from the 3.1.2 release. If a build reports large numbers of Non-test scoped test only dependencies found problems, this is due to the new behavior.
The recommended fix from the Apache Maven team is either to add these dependencies to the ignoredNonTestScopedDependencies
configuration which is brittle and cumbersome or to change the scope of these dependencies to test
which may break for many reasons, especially in larger projects. Changing the scope also
clashes with the dependency-scope plugin so this must be temporarily disabled with <basepom.check.skip-dependency-scope>true</basepom.check.skip-dependency-scope>
.
There is a fix proposed as https://issues.apache.org/jira/browse/MDEP-804. Once that has been merged and released, the old behavior can be restored.
basepom.site.check.skip-...
and basepom.site.test.skip
) to control site report generation independently from main report generation. All settings default to the parent (basepom.check.skip-...
and basepom.test.skip
) values.basepom.site.skip
(default to false
) to skip site generation.CNAME
file from license check (for github site setup)IMPORTANT! WITH THE UPCOMING RELEASE OF JDK17, VERSION 40 IS THE LAST BASEPOM RELEASE THAT SUPPORTS JDK 9 AND 10 AS THE BUILD JDK. STARTING WITH THE NEXT RELEASE, ONLY JDK11+ WILL BE SUPPORTED (TARGET JDK CAN STILL BE 7-10).
basepom.javadoc.doclint
and basepom.javadoc.show