Reference
Recipes
Java
Modernize
Design Partners
Use Set.of(..) in Java 9 or higher
** org.openrewrite.java.migrate.guava.NoGuavaImmutableSetOf** Replaces ImmutableSet.of(..) if the returned type is immediately down-cast. Java 9 introduced List#of(..), Map#of(..), Set#of(..) which is similar to ImmutableList#of(..), ImmutableMap#of(..), ImmutableSet#of(..), but has a subtle difference. As per the Java 9 documentation, Set.of provides an unspecified iteration order on the set of elements and is subject to change, whereas Guava ImmutableSet preserves the order from construction time. This is worth pointing out in case your usage calls for iteration order being important.

Tags

  • RSPEC-4738

Source

  • groupId: org.openrewrite.recipe
  • artifactId: rewrite-migrate-java
  • version: 1.7.0

Usage

This recipe has no required configuration options and can be activated directly after taking a dependency on org.openrewrite.recipe:rewrite-migrate-java:1.7.0 in your build file:
Gradle
Maven
build.gradle
1
plugins {
2
id("org.openrewrite.rewrite") version("5.22.2")
3
}
4
5
rewrite {
6
activeRecipe("org.openrewrite.java.migrate.guava.NoGuavaImmutableSetOf")
7
}
8
9
repositories {
10
mavenCentral()
11
}
12
13
dependencies {
14
rewrite("org.openrewrite.recipe:rewrite-migrate-java:1.7.0")
15
}
Copied!
pom.xml
1
<project>
2
<build>
3
<plugins>
4
<plugin>
5
<groupId>org.openrewrite.maven</groupId>
6
<artifactId>rewrite-maven-plugin</artifactId>
7
<version>4.25.0</version>
8
<configuration>
9
<activeRecipes>
10
<recipe>org.openrewrite.java.migrate.guava.NoGuavaImmutableSetOf</recipe>
11
</activeRecipes>
12
</configuration>
13
<dependencies>
14
<dependency>
15
<groupId>org.openrewrite.recipe</groupId>
16
<artifactId>rewrite-migrate-java</artifactId>
17
<version>1.7.0</version>
18
</dependency>
19
</dependencies>
20
</plugin>
21
</plugins>
22
</build>
23
</project>
Copied!
Recipes can also be activated directly from the command line by adding the argument -Drewrite.activeRecipesorg.openrewrite.java.migrate.guava.NoGuavaImmutableSetOf
Export as PDF
Copy link