All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.rewrite.java-version-17.yml Maven / Gradle / Ivy

There is a newer version: 3.0.1
Show newest version
#
# Copyright 2024 the original author or authors.
# 

# Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at #

# https://www.apache.org/licenses/LICENSE-2.0 #

# Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.UpgradeToJava17 displayName: Migrate to Java 17 description: >- This recipe will apply changes commonly needed when migrating to Java 17. Specifically, for those applications that are built on Java 8, this recipe will update and add dependencies on J2EE libraries that are no longer directly bundled with the JDK. This recipe will also replace deprecated API with equivalents when there is a clear migration strategy. Build files will also be updated to use Java 17 as the target/source and plugins will be also be upgraded to versions that are compatible with Java 17. tags: - java17 recipeList: - org.openrewrite.java.migrate.Java8toJava11 - org.openrewrite.java.migrate.UpgradeBuildToJava17 - org.openrewrite.java.migrate.lang.StringFormatted - org.openrewrite.staticanalysis.InstanceOfPatternMatch - org.openrewrite.staticanalysis.AddSerialAnnotationToSerialVersionUID - org.openrewrite.java.migrate.RemovedRuntimeTraceMethods - org.openrewrite.java.migrate.RemovedToolProviderConstructor - org.openrewrite.java.migrate.RemovedModifierAndConstantBootstrapsConstructors - org.openrewrite.java.migrate.lang.UseTextBlocks: convertStringsWithoutNewlines: false - org.openrewrite.java.migrate.DeprecatedJavaxSecurityCert - org.openrewrite.java.migrate.DeprecatedLogRecordThreadID - org.openrewrite.java.migrate.RemovedLegacySunJSSEProviderName - org.openrewrite.java.migrate.Jre17AgentMainPreMainPublic - org.openrewrite.java.migrate.DeprecatedCountStackFramesMethod - org.openrewrite.java.migrate.RemovedZipFinalizeMethods - org.openrewrite.java.migrate.RemovedSSLSessionGetPeerCertificateChainMethodImpl - org.openrewrite.java.migrate.SunNetSslPackageUnavailable - org.openrewrite.java.migrate.RemovedRMIConnectorServerCredentialTypesConstant - org.openrewrite.java.migrate.RemovedFileIOFinalizeMethods - org.openrewrite.java.migrate.UpgradePluginsForJava17 - org.openrewrite.java.dependencies.UpgradeDependencyVersion: groupId: com.google.inject artifactId: guice newVersion: 5.x --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.UpgradeBuildToJava17 displayName: Upgrade build to Java 17 description: Updates build files to use Java 17 as the target/source. tags: - java17 recipeList: - org.openrewrite.java.migrate.UpgradeJavaVersion: version: 17 --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.UpgradePluginsForJava17 displayName: Upgrade plugins to Java 17 compatible versions description: Updates plugins to version compatible with Java 17. tags: - java17 recipeList: - org.openrewrite.github.SetupJavaUpgradeJavaVersion: minimumJavaMajorVersion: 17 - org.openrewrite.gradle.UpdateGradleWrapper: version: 7.3 addIfMissing: false - org.openrewrite.maven.UpgradePluginVersion: groupId: org.apache.maven.plugins artifactId: maven-checkstyle-plugin newVersion: 3.x - org.openrewrite.maven.UpgradePluginVersion: groupId: org.apache.maven.plugins artifactId: maven-compiler-plugin newVersion: 3.x - org.openrewrite.maven.UpgradePluginVersion: groupId: org.apache.maven.plugins artifactId: maven-war-plugin newVersion: 3.x - org.openrewrite.maven.UpgradePluginVersion: groupId: com.sonatype.clm artifactId: clm-maven-plugin newVersion: 2.47.6-01 - org.openrewrite.maven.UpgradePluginVersion: groupId: ro.isdc.wro4j artifactId: wro4j-maven-plugin newVersion: 2.1.x --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.DeprecatedJavaxSecurityCert displayName: Use `java.security.cert` instead of `javax.security.cert` description: The `javax.security.cert` package has been deprecated for removal. tags: - java17 recipeList: - org.openrewrite.java.ChangePackage: oldPackageName: javax.security.cert newPackageName: java.security.cert --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedLegacySunJSSEProviderName displayName: Use `SunJSSE` instead of `com.sun.net.ssl.internal.ssl.Provider` description: The `com.sun.net.ssl.internal.ssl.Provider` provider name was removed. tags: - java17 recipeList: - org.openrewrite.java.migrate.ReplaceStringLiteralValue: oldLiteralValue: com.sun.net.ssl.internal.ssl.Provider newLiteralValue: SunJSSE --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.DeprecatedLogRecordThreadID displayName: Adopt `setLongThreadID` in `java.util.logging.LogRecord` description: Avoid using the deprecated methods in `java.util.logging.LogRecord`. tags: - java17 recipeList: - org.openrewrite.java.ChangeMethodName: methodPattern: java.util.logging.LogRecord getThreadID() newMethodName: getLongThreadID - org.openrewrite.java.migrate.ChangeMethodInvocationReturnType: methodPattern: java.util.logging.LogRecord getLongThreadID() newReturnType: long - org.openrewrite.java.ChangeMethodName: methodPattern: java.util.logging.LogRecord setThreadID(int) newMethodName: setLongThreadID --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.Jre17AgentMainPreMainPublic displayName: Set visibility of `premain` and `agentmain` methods to `public` description: Check for a behavior change in Java agents. tags: - java17 recipeList: - org.openrewrite.java.ChangeMethodAccessLevel: methodPattern: "*..* agentmain(java.lang.String)" newAccessLevel: public - org.openrewrite.java.ChangeMethodAccessLevel: methodPattern: "*..* agentmain(java.lang.String, java.lang.instrument.Instrumentation)" newAccessLevel: public - org.openrewrite.java.ChangeMethodAccessLevel: methodPattern: "*..* premain(java.lang.String)" newAccessLevel: public - org.openrewrite.java.ChangeMethodAccessLevel: methodPattern: "*..* premain(java.lang.String, java.lang.instrument.Instrumentation)" newAccessLevel: public --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedZipFinalizeMethods displayName: Replace `finalize` method in `java.util.zip.ZipFile`, `java.util.zip.Inflater` and `java.util.zip.Deflater` description: >- The `finalize` method in `java.util.zip.ZipFile` is replaced with the `close` method and is replaced by the `end` method in `java.util.zip.Inflater` and `java.util.zip.Deflater` as it is no longer available in Java SE 12 and later. tags: - java17 recipeList: - org.openrewrite.java.ChangeMethodName: methodPattern: "java.util.zip.Inflater finalize()" newMethodName: end ignoreDefinition: true - org.openrewrite.java.ChangeMethodName: methodPattern: "java.util.zip.Deflater finalize()" newMethodName: end ignoreDefinition: true - org.openrewrite.java.ChangeMethodName: methodPattern: "java.util.zip.ZipFile finalize()" newMethodName: close ignoreDefinition: true --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedSSLSessionGetPeerCertificateChainMethodImpl displayName: Replace `SSLSession.getPeerCertificateChain()` method description: >- The `javax.net.ssl.SSLSession.getPeerCertificateChain()` method implementation was removed from the SunJSSE provider and HTTP client implementation in Java SE 15. The default implementation will now throw an `UnsupportedOperationException`. Applications using this method should be updated to use the `javax.net.ssl.SSLSession.getPeerCertificates()` method instead. tags: - java17 recipeList: - org.openrewrite.java.ChangeMethodName: methodPattern: "javax.net.ssl.SSLSession getPeerCertificateChain()" newMethodName: getPeerCertificates ignoreDefinition: true --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.SunNetSslPackageUnavailable displayName: Replace `com.sun.net.ssl` package description: >- The internal API `com.sun.net.ssl` is removed. The package was intended for internal use only and replacement APIs can be found in the `javax.net.ssl` package. tags: - java17 recipeList: - org.openrewrite.java.ChangePackage: oldPackageName: com.sun.net.ssl newPackageName: javax.net.ssl --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedRMIConnectorServerCredentialTypesConstant displayName: Replace `RMIConnectorServer.CREDENTIAL_TYPES` constant description: >- This recipe replaces the `RMIConnectorServer.CREDENTIAL_TYPES` constant with the `RMIConnectorServer.CREDENTIALS_FILTER_PATTERN` constant. tags: - java17 recipeList: - org.openrewrite.java.ReplaceConstantWithAnotherConstant: existingFullyQualifiedConstantName: javax.management.remote.rmi.RMIConnectorServer.CREDENTIAL_TYPES fullyQualifiedConstantName: javax.management.remote.rmi.RMIConnectorServer.CREDENTIALS_FILTER_PATTERN --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.DeprecatedCountStackFramesMethod displayName: Remove `Thread.countStackFrames()` method description: >- `Thread.countStackFrames()` has been removed in Java SE 14 and has been changed in this release to unconditionally throw `UnsupportedOperationException` This recipe removes the usage of this method in your application as long as the method is not assigned to a variable. For more information on the Java SE 14 deprecation of this method, see https://bugs.java.com/bugdatabase/view_bug?bug_id=8205132. tags: - java17 recipeList: - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Thread countStackFrames()' --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedFileIOFinalizeMethods displayName: Replace `finalize` method in `java.io.FileInputStream` and `java.io.FileOutputStream` description: >- The `finalize` method in `java.io.FileInputStream` and `java.io.FileOutputStream` is no longer available in Java SE 12 and later. The recipe replaces it with the `close` method. tags: - java17 recipeList: - org.openrewrite.java.ChangeMethodName: methodPattern: "java.io.FileInputStream finalize()" newMethodName: close ignoreDefinition: true - org.openrewrite.java.ChangeMethodName: methodPattern: "java.io.FileOutputStream finalize()" newMethodName: close ignoreDefinition: true --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedToolProviderConstructor displayName: Change `javax.tools.ToolProvider` methods calls to static description: >- The `javax.tools.ToolProvider()` constructor has been removed in Java SE 16 since the class only contains static methods. The recipe converts `javax.tools.ToolProvider getSystemJavaCompiler()`, `javax.tools.ToolProvider getSystemDocumentationTool()` and `javax.tools.ToolProvider getSystemToolClassLoader()` to static methods. recipeList: - org.openrewrite.java.ChangeMethodTargetToStatic: methodPattern: javax.tools.ToolProvider *() fullyQualifiedTargetTypeName: javax.tools.ToolProvider --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedModifierAndConstantBootstrapsConstructors displayName: Change `java.lang.reflect.Modifier` and ` java.lang.invoke.ConstantBootstraps` method calls to static description: >- The `java.lang.reflect.Modifier()` and `java.lang.invoke.ConstantBootstraps()` constructors have been removed in Java SE 15 because both classes only contain static methods. This recipe converts the usage of all methods in the two classes to be static. See https://docs.oracle.com/en/java/javase/15/migrate/index.html#GUID-233853B8-0782-429E-BEF7-7532EE610E63 for more information on these changes. recipeList: - org.openrewrite.java.ChangeMethodTargetToStatic: methodPattern: java.lang.reflect.Modifier *(..) fullyQualifiedTargetTypeName: java.lang.reflect.Modifier - org.openrewrite.java.ChangeMethodTargetToStatic: methodPattern: java.lang.invoke.ConstantBootstraps *(..) fullyQualifiedTargetTypeName: java.lang.invoke.ConstantBootstraps --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.RemovedRuntimeTraceMethods displayName: Remove `Runtime.traceInstructions(boolean)` and `Runtime.traceMethodCalls` methods description: >- The `traceInstructions` and `traceMethodCalls` methods in `java.lang.Runtime` were deprecated in Java SE 9 and are no longer available in Java SE 13 and later. The recipe removes the invocations of these methods since the method invocations do nothing functionally. tags: - java17 recipeList: - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Runtime traceInstructions(boolean)' - org.openrewrite.java.RemoveMethodInvocations: methodPattern: 'java.lang.Runtime traceMethodCalls(boolean)'





© 2015 - 2025 Weber Informatics LLC | Privacy Policy