Apache Maven best practices
Recipe ID
org.openrewrite.maven.BestPracticesArtifact
org.openrewrite:rewrite-mavenApplies best practices to Maven POMs.
Usage
This recipe has no required configuration options. You’ll need the Moderne CLI configured before running the command below.
mod run . --recipe org.openrewrite.maven.BestPracticesIf the recipe isn’t available locally, install it with:
mod config recipes jar install org.openrewrite:rewrite-maven:8.88.0Definition
This recipe runs the following recipes in order.
- Add explicit dependency versions
org.openrewrite.maven.cleanup.ExplicitDependencyVersion - Add explicit
groupIdto Maven pluginsorg.openrewrite.maven.cleanup.ExplicitPluginGroupId - Add explicit plugin versions
org.openrewrite.maven.cleanup.ExplicitPluginVersion - Dependencies should not have
systemscopeorg.openrewrite.maven.cleanup.NoSystemScopeDependencies - Drop prefixless expressions in POM
org.openrewrite.maven.cleanup.PrefixlessExpressions - Order POM elements
org.openrewrite.maven.OrderPomElements - Remove duplicate Maven dependencies
org.openrewrite.maven.RemoveDuplicateDependencies - Remove redundant explicit dependency and plugin versions
org.openrewrite.maven.RemoveRedundantDependencyVersions - Remove redundant properties
org.openrewrite.maven.RemoveRedundantProperties - Dependency management dependencies should have a version
org.openrewrite.maven.cleanup.DependencyManagementDependencyRequiresVersion - Modernize obsolete Maven poms
org.openrewrite.maven.ModernizeObsoletePoms - Migrate to
maven-dependency-plugingoalresolve-sourcesorg.openrewrite.maven.plugin.DependencyPluginGoalResolveSources - Sort dependencies
org.openrewrite.maven.SortDependencies - Update SCM with Git origin
org.openrewrite.maven.UpdateScmFromGitOrigin
Data tables
Structured output this recipe can produce.
- Maven metadata failuresAttempts to resolve maven metadata that failed.
org.openrewrite.maven.table.MavenMetadataFailures - Source files that had resultsSource files that were modified by the recipe run.
org.openrewrite.table.SourcesFileResults - Source files that had search resultsSearch results that were found during the recipe run.
org.openrewrite.table.SearchResults - Source files that errored on a recipeThe details of all errors produced by a recipe run.
org.openrewrite.table.SourcesFileErrors - Recipe performanceStatistics used in analyzing the performance of recipes.
org.openrewrite.table.RecipeRunStats