Upgrade to Axonframework 4.7 Jakarta org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta
Migration file to upgrade from an Axon Framework Javax-specific project to Jakarta.
Recipe source
GitHub , Issue Tracker , Maven Central
groupId: org.openrewrite.recipe
artifactId: rewrite-third-party
This recipe is composed of more than one recipe. If you want to customize the set of recipes this is composed of, you can find and copy the GitHub source for the recipe from the link above.
Usage
This recipe has no required configuration options. It can be activated by adding a dependency on org.openrewrite.recipe:rewrite-third-party:0.5.1
in your build file or by running a shell command (in which case no build changes are needed):
Gradle Gradle init script Maven POM Maven Command Line Moderne CLI
Add the following to your build.gradle
file:
Copy plugins {
id( "org.openrewrite.rewrite" ) version( "6.16.1" )
}
rewrite {
activeRecipe( "org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta" )
}
repositories {
mavenCentral()
}
dependencies {
rewrite( "org.openrewrite.recipe:rewrite-third-party:0.5.1" )
}
Run gradle rewriteRun
to run the recipe.
Create a file named init.gradle
in the root of your project.
Copy initscript {
repositories {
maven { url "https://plugins.gradle.org/m2" }
}
dependencies { classpath( "org.openrewrite:plugin:6.16.1" ) }
}
rootProject {
plugins . apply( org.openrewrite.gradle.RewritePlugin )
dependencies {
rewrite( "org.openrewrite.recipe:rewrite-third-party:0.5.1" )
}
rewrite {
activeRecipe( "org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta" )
}
afterEvaluate {
if (repositories . isEmpty()) {
repositories {
mavenCentral()
}
}
}
}
Run gradle --init-script init.gradle rewriteRun
to run the recipe.
Add the following to your pom.xml
file:
Copy < project >
< build >
< plugins >
< plugin >
< groupId >org.openrewrite.maven</ groupId >
< artifactId >rewrite-maven-plugin</ artifactId >
< version >5.34.0</ version >
< configuration >
< activeRecipes >
< recipe >org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta</ recipe >
</ activeRecipes >
</ configuration >
< dependencies >
< dependency >
< groupId >org.openrewrite.recipe</ groupId >
< artifactId >rewrite-third-party</ artifactId >
< version >0.5.1</ version >
</ dependency >
</ dependencies >
</ plugin >
</ plugins >
</ build >
</ project >
Run mvn rewrite:run
to run the recipe.
You will need to have Maven installed on your machine before you can run the following command.
Copy mvn -U org.openrewrite.maven:rewrite-maven-plugin:run -Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-third-party:RELEASE -Drewrite.activeRecipes=org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta
You will need to have configured the Moderne CLI on your machine before you can run the following command.
Copy mod run . --recipe UpgradeAxonFramework_4_7_Jakarta
Definition
Recipe List Yaml Recipe List
Change Maven dependency
oldGroupId: org.axonframework
oldArtifactId: axon-configuration-jakarta
newArtifactId: axon-configuration
Change Maven dependency
oldGroupId: org.axonframework
oldArtifactId: axon-eventsourcing-jakarta
newArtifactId: axon-eventsourcing
Change Maven dependency
oldGroupId: org.axonframework
oldArtifactId: axon-messaging-jakarta
newArtifactId: axon-messaging
Change Maven dependency
oldGroupId: org.axonframework
oldArtifactId: axon-modelling-jakarta
newArtifactId: axon-modelling
Rename package name
oldPackageName: org.axonframework.common.legacyjpa
newPackageName: org.axonframework.common.jpa
Change type
oldFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.legacyjpa.DeadLetterJpaConverter
newFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.jpa.DeadLetterJpaConverter
Change type
oldFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.legacyjpa.EventMessageDeadLetterJpaConverter
newFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.jpa.EventMessageDeadLetterJpaConverter
Change type
oldFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.legacyjpa.JpaDeadLetter
newFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.jpa.JpaDeadLetter
Change type
oldFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.legacyjpa.JpaSequencedDeadLetterQueue
newFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.jpa.JpaSequencedDeadLetterQueue
Change type
oldFullyQualifiedTypeName: org.axonframework.eventhandling.tokenstore.legacyjpa.JpaTokenStore
newFullyQualifiedTypeName: org.axonframework.eventhandling.tokenstore.jpa.JpaTokenStore
Change type
oldFullyQualifiedTypeName: org.axonframework.eventsourcing.eventstore.legacyjpa.JpaEventStorageEngine
newFullyQualifiedTypeName: org.axonframework.eventsourcing.eventstore.jpa.JpaEventStorageEngine
Change type
oldFullyQualifiedTypeName: org.axonframework.eventsourcing.eventstore.legacyjpa.SQLErrorCodesResolver
newFullyQualifiedTypeName: org.axonframework.eventsourcing.eventstore.jpa.SQLErrorCodesResolver
Change type
oldFullyQualifiedTypeName: org.axonframework.messaging.interceptors.legacyvalidation.BeanValidationInterceptor
newFullyQualifiedTypeName: org.axonframework.messaging.interceptors.BeanValidationInterceptor
Change type
oldFullyQualifiedTypeName: org.axonframework.messaging.interceptors.legacyvalidation.JSR303ViolationException
newFullyQualifiedTypeName: org.axonframework.messaging.interceptors.JSR303ViolationException
Change type
oldFullyQualifiedTypeName: org.axonframework.modelling.command.legacyjpa.GenericJpaRepository
newFullyQualifiedTypeName: org.axonframework.modelling.command.GenericJpaRepository
Change type
oldFullyQualifiedTypeName: org.axonframework.modelling.saga.repository.legacyjpa.JpaSagaStore
newFullyQualifiedTypeName: org.axonframework.modelling.saga.repository.jpa.JpaSagaStore
Change type
oldFullyQualifiedTypeName: org.axonframework.springboot.autoconfig.legacyjpa.JpaJavaxAutoConfiguration
newFullyQualifiedTypeName: org.axonframework.springboot.autoconfig.JpaAutoConfiguration
Change type
oldFullyQualifiedTypeName: org.axonframework.springboot.autoconfig.legacyjpa.JpaJavaxEventStoreAutoConfiguration
newFullyQualifiedTypeName: org.axonframework.springboot.autoconfig.JpaEventStoreAutoConfiguration
Change type
oldFullyQualifiedTypeName: org.axonframework.springboot.util.legacyjpa.ContainerManagedEntityManagerProvider
newFullyQualifiedTypeName: org.axonframework.springboot.util.jpa.ContainerManagedEntityManagerProvider
Copy ---
type : specs.openrewrite.org/v1beta/recipe
name : org.axonframework.migration.UpgradeAxonFramework_4_7_Jakarta
displayName : Upgrade to Axonframework 4.7 Jakarta
description : Migration file to upgrade from an Axon Framework Javax-specific project to Jakarta.
recipeList :
- org.openrewrite.maven.UpgradeDependencyVersion :
groupId : org.axonframework
artifactId : *
newVersion : 4.7.x
- org.openrewrite.java.migrate.jakarta.JavaxMigrationToJakarta
- org.openrewrite.maven.ChangeDependencyGroupIdAndArtifactId :
oldGroupId : org.axonframework
oldArtifactId : axon-configuration-jakarta
newArtifactId : axon-configuration
newVersion : 4.7.x
- org.openrewrite.maven.ChangeDependencyGroupIdAndArtifactId :
oldGroupId : org.axonframework
oldArtifactId : axon-eventsourcing-jakarta
newArtifactId : axon-eventsourcing
newVersion : 4.7.x
- org.openrewrite.maven.ChangeDependencyGroupIdAndArtifactId :
oldGroupId : org.axonframework
oldArtifactId : axon-messaging-jakarta
newArtifactId : axon-messaging
newVersion : 4.7.x
- org.openrewrite.maven.ChangeDependencyGroupIdAndArtifactId :
oldGroupId : org.axonframework
oldArtifactId : axon-modelling-jakarta
newArtifactId : axon-modelling
newVersion : 4.7.x
- org.openrewrite.java.ChangePackage :
oldPackageName : org.axonframework.common.legacyjpa
newPackageName : org.axonframework.common.jpa
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.legacyjpa.DeadLetterJpaConverter
newFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.jpa.DeadLetterJpaConverter
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName: org.axonframework.eventhandling.deadletter.legacyjpa.EventMessageDeadLetterJpaConverter
newFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.jpa.EventMessageDeadLetterJpaConverter
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.legacyjpa.JpaDeadLetter
newFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.jpa.JpaDeadLetter
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.legacyjpa.JpaSequencedDeadLetterQueue
newFullyQualifiedTypeName : org.axonframework.eventhandling.deadletter.jpa.JpaSequencedDeadLetterQueue
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventhandling.tokenstore.legacyjpa.JpaTokenStore
newFullyQualifiedTypeName : org.axonframework.eventhandling.tokenstore.jpa.JpaTokenStore
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventsourcing.eventstore.legacyjpa.JpaEventStorageEngine
newFullyQualifiedTypeName : org.axonframework.eventsourcing.eventstore.jpa.JpaEventStorageEngine
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.eventsourcing.eventstore.legacyjpa.SQLErrorCodesResolver
newFullyQualifiedTypeName : org.axonframework.eventsourcing.eventstore.jpa.SQLErrorCodesResolver
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.messaging.interceptors.legacyvalidation.BeanValidationInterceptor
newFullyQualifiedTypeName : org.axonframework.messaging.interceptors.BeanValidationInterceptor
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.messaging.interceptors.legacyvalidation.JSR303ViolationException
newFullyQualifiedTypeName : org.axonframework.messaging.interceptors.JSR303ViolationException
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.modelling.command.legacyjpa.GenericJpaRepository
newFullyQualifiedTypeName : org.axonframework.modelling.command.GenericJpaRepository
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.modelling.saga.repository.legacyjpa.JpaSagaStore
newFullyQualifiedTypeName : org.axonframework.modelling.saga.repository.jpa.JpaSagaStore
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.springboot.autoconfig.legacyjpa.JpaJavaxAutoConfiguration
newFullyQualifiedTypeName : org.axonframework.springboot.autoconfig.JpaAutoConfiguration
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.springboot.autoconfig.legacyjpa.JpaJavaxEventStoreAutoConfiguration
newFullyQualifiedTypeName : org.axonframework.springboot.autoconfig.JpaEventStoreAutoConfiguration
- org.openrewrite.java.ChangeType :
oldFullyQualifiedTypeName : org.axonframework.springboot.util.legacyjpa.ContainerManagedEntityManagerProvider
newFullyQualifiedTypeName : org.axonframework.springboot.util.jpa.ContainerManagedEntityManagerProvider
See how this recipe works across multiple open-source repositories
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
Chuka Obinabo, Evie Lau, ranuradh, Anu Ramamoorthy, Jonathan Schnéider , Tim te Beek , Knut Wannheden