← All recipes
Open source

Has minimum Java version

Recipe IDorg.openrewrite.java.search.HasMinimumJavaVersion
Artifactorg.openrewrite:rewrite-java

Finds source files when the oldest Java version in use meets the supplied minimum version. Java version is attributed per source set (for example src/main/java and src/test/java), so the oldest Java version in use is the lowest version across every source set of every subproject in a repository. For example, the main source set of a project may use Java 8 while its test source set uses Java 17; in that case the oldest Java version in use is Java 8.

Single recipeApache 2.0

Usage

You’ll need the Moderne CLI configured before running the command below.

mod run . --recipe org.openrewrite.java.search.HasMinimumJavaVersion --recipe-option "version=17"

If the recipe isn’t available locally, install it with:

mod config recipes jar install org.openrewrite:rewrite-java:8.88.0

Options

NameTypeDescription
versionrequiredStringA minimum version number or a node-style semver selector. Plain values like 17 or 17.0.1 match that version or higher. To match an exact version, use HasJavaVersion instead.
e.g. 17
checkTargetCompatibilityBooleanThe source and target compatibility versions can be different. This option allows you to check against the target compatibility version instead of the source compatibility version.
e.g. 17.X

Data tables

Structured output this recipe can produce.

  • 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