Links

Update Gradle project Java compatibility

org.openrewrite.gradle.UpdateJavaCompatibility
Find and updates the Java compatibility for the Gradle project.

Recipe source

  • groupId: org.openrewrite
  • artifactId: rewrite-gradle
  • version: 8.17.1

Options

Type
Name
Description
Example
Integer
version
The Java version to upgrade to.
11
CompatibilityType
compatibilityType
Optional. The compatibility type to change Valid options: source, target
DeclarationStyle
declarationStyle
Optional. The desired style to write the new version as when being written to the sourceCompatibility or targetCompatibility variables. Default, match current source style. (ex. Enum: JavaVersion.VERSION_11, Number: 11, or String: "11") Valid options: Enum, Number, String
Boolean
allowDowngrade
Optional. Allow downgrading the Java version.
Boolean
addIfMissing
Optional. Adds the specified Compatibility Type if one is not found.

Usage

This recipe has required configuration parameters. Recipes with required configuration parameters cannot be activated directly. To activate this recipe you must create a new recipe which fills in the required parameters. In your rewrite.yml create a new recipe with a unique name. For example: com.yourorg.UpdateJavaCompatibilityExample. Here's how you can define and customize such a recipe within your rewrite.yml:
rewrite.yml
---
type: specs.openrewrite.org/v1beta/recipe
name: com.yourorg.UpdateJavaCompatibilityExample
displayName: Update Gradle project Java compatibility example
recipeList:
- org.openrewrite.gradle.UpdateJavaCompatibility:
version: 11
Now that com.yourorg.UpdateJavaCompatibilityExample has been defined activate it in your build file:
Gradle
Moderne CLI
  1. 1.
    Add the following to your build.gradle file:
build.gradle
plugins {
id("org.openrewrite.rewrite") version("6.8.4")
}
rewrite {
activeRecipe("com.yourorg.UpdateJavaCompatibilityExample")
}
repositories {
mavenCentral()
}
  1. 2.
    Run gradle rewriteRun to run the recipe.
You will need to have configured the Moderne CLI on your machine before you can run the following command.
shell
mod run . --recipe UpdateJavaCompatibilityExample

See how this recipe works across multiple open-source repositories

Moderne Link Image
The community edition of the Moderne platform enables you to easily run recipes across thousands of open-source repositories.
Please contact Moderne for more information about safely running the recipes on your own codebase in a private SaaS.

Contributors