개발 공부 기록하기/04. Spring & Spring Boot
Unable to find method java.lang.String org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper.getKotlinPluginVersion() 원인
lannstark
2022. 8. 29. 23:59
회사에서 사용하는 프로젝트의 언어 (Kotlin), 프레임워크 (Spring Boot) 최신화를 하려고 하는 중인데
Unable to find method ''java.lang.String org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper.getKotlinPluginVersion()'' 'java.lang.String org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper.getKotlinPluginVersion()' Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) Re-download dependencies and sync project (requires network) The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem. Stop Gradle build processes (requires restart) Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project. In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.
와 같은 에러가 났다.
도저히 원인을 알 수 없어 열심히 구글링을 해보니, Kotlin 1.7.0부터 gradle plugin api 가 변경되었고
https://kotlinlang.org/docs/whatsnew17.html#updates-in-the-kotlin-gradle-plugin-api
그로 인해 spring boot와 kotlin이 제대로 결합되지 못하는 현상이 나온 것이었다.
현재 확인해본 바로는 spring boot 2.5.2부터 kotlin 1.7.0 이상을 사용할 수 있는 것으로 보인다.
https://github.com/spring-projects/spring-boot/issues/26947
2.5.2 Bug Fix 목록에 아래 항목이 들어가 있다.
- Kotlin plugin's version shouldn't be read if the kotlin.version extra property has been set #26947
관련 Youtrack :
역시 언어, 프레임워크 버전업은 한 번에 하는 것보다 나올 때마다 점진적으로 하는게 최고인 것 같다 ㅎㅎㅎㅎ
코틀린 1.6.0 / 1.6.20 / 1.7.0 release note를 열심히 읽었는데 (시간이 된다면) 조만간 유튜브도 찍고 블로그 글도 올려봐야겠다.
이제 spring boot release note도 읽으러 가야 한다!!!!!!