Android/Error

오류 수정 방법 : Caused by: org.gradle.api.GradleException: 'compileDebugJavaWithJavac' task (current target is 17) and 'compileDebugKotlin' task (current target is 1.8) jvm target compatibility should be set to the same Java version.

Dev.Cho 2023. 5. 13. 15:32

애러 원인

애 애러는 현재 Kotlin 버전과,  Kotlin Compile 시 JVM 타겟 버전 설정이 달라서 생기는 문제이다.

Caused by: org.gradle.api.GradleException: 'compileDebugJavaWithJavac' task (current target is [Kotlin 타겟 버전]) and 'compileDebugKotlin' task (current target is [JVM 타겟 버전]) jvm target compatibility should be set to the same Java version.

 

애러 해결 방법

이 문제는 아주 간단히 해결 가능하다. app 수준의 build.gradle.kts 파일 혹은 build.gradle 파일에 아래와 같이 적혀 있을텐데 

android {
    ...
    kotlinOptions {
        jvmTarget = "[JVM 타겟 버전]"
    }
    ...
}

 

이 부분을 위에서 말하는 [Kotlin 타겟 버전]으로 변경하면 된다. 나는 현재 버전이 17이라고 나와 있기 때문에 jvmTarget을 17로 변경하였다.

'compileDebugJavaWithJavac' task (current target is 17) and 'compileDebugKotlin' task (current target is 1.8) jvm target compatibility should be set to the same Java version.

JDK 1.10버전 이상부터는 1. 을 붙이지 않고 서브버전명을 그대로 쓴다. 즉, 17이라고 쓰면 된다.

android {
    ...
    kotlinOptions {
        jvmTarget = "17"
    }
    ...
}

 

이렇게 하면 빌드가 성공하는 것을 볼 수 있다.

 

반응형