728x90
반응형
개요
OpenRewrite는 소스 코드를 자동으로 리팩토링하고 마이그레이션할 수 있는 도구입니다. 이 문서에서는 OpenRewrite를 활용하여 다음과 같은 레시피를 적용해서 마이그레이션을 수행하는 방법을 설명합니다.
- Spring Boot 3.X으로 마이그레이션
- Java 17/21로 마이그레이션
- Java 코드 자동 포맷팅
레시피 선택하기
OpenRewrite는 레시피라는 코드 변환 규칙 세트를 사용합니다. 이번에 살펴 볼 레시피는 다음과 같습니다.
1. Spring Boot 3.0 마이그레이션
Spring Boot 2.x 애플리케이션을 Spring Boot 3.0으로 업그레이드하기 위한 레시피입니다.
org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_0
관련 레시피 : https://docs.openrewrite.org/recipes/java/spring/boot3/upgradespringboot_3_0
2. Java 버전 마이그레이션
Java 17 마이그레이션
org.openrewrite.java.migrate.UpgradeToJava17
관련 레시피 : https://docs.openrewrite.org/recipes/java/migrate/upgradetojava17
Java 21 마이그레이션
org.openrewrite.java.migrate.UpgradeToJava21
관련 레시피 : https://docs.openrewrite.org/running-recipes/popular-recipe-guides/migrate-to-java-21
3. Java 코드 포맷팅
org.openrewrite.java.format.AutoFormat
관련 레시피 : https://docs.openrewrite.org/recipes/java/format/autoformat
적용 방법
OpenRewrite를 프로젝트에 적용하는 방법은 여러 가지가 있습니다. 여기서는 Gradle을 사용한 방법을 설명합니다.
방법 1: Gradle Init Script 사용
init.gradle 파일을 생성하고 다음 내용을 추가합니다
initscript {
repositories {
maven { url "<https://plugins.gradle.org/m2>" }
}
dependencies { classpath("org.openrewrite:plugin:latest.release") }
}
rootProject {
plugins.apply(org.openrewrite.gradle.RewritePlugin)
dependencies {
rewrite("org.openrewrite:rewrite-java")
}
rewrite {
// Java 코드 포맷팅 레시피
activeRecipe("org.openrewrite.java.format.AutoFormat")
setExportDatatables(true)
}
afterEvaluate {
if (repositories.isEmpty()) {
repositories {
mavenCentral()
}
}
}
}
실행
./gradlew --init-script init.gradle rewriteRun
방법 2: Build.Gradle 사용
build.gradle 파일에 다음 내용을 추가합니다
plugins {
id("org.openrewrite.rewrite") version("7.2.1")
}
rewrite {
// Java 코드 포맷팅 레시피
activeRecipe("org.openrewrite.java.format.AutoFormat")
setExportDatatables(true)
}
repositories {
mavenCentral()
}
실행
./gradlew --init-script init.gradle rewriteRun
728x90
반응형