728x90
반응형
현상
프로젝트에서 모듈을 변경하였는데 Kotlin 파일만 Import가 되지 않았다.
aar 파일을 뜯어보니 원인은 아래와 같았다.
This class file was compiled with different version of Kotlin compiler and can't be decompiled.
Current compiler ABI version is 1.8.0
File ABI version is 2.0.0
모듈에 있는 클래스의 Kotlin 버전과 프로젝트의 Kotlin 버전이 불일치하여 발생하는 문제였다.
그렇다면 모듈에서 원하는 Kotlin 버전으로 다시 세팅해보자 !!
원인 및 해결
Kotlin 2.0.0 버전을 사용하기 위해선 gralde 버전도 호환이 되는 8.0 이상의 버전을 사용해야 한다.
build.gradle (project)
buildscript {
ext.kotlin_version = '2.0.0' // Kotlin 버전을 2.0.0으로 유지
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:8.0.0' // AGP 8.0.0으로 설정
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
mavenCentral()
}
}
gradle-wrapper.properties
distributionUrl=https\\://services.gradle.org/distributions/gradle-8.0-bin.zip
build-gradle 버전이 8.0 이상인 경우, app 버전 gradle에 namespace를 명시해줘야 한다.
build.gradle(:app)
android {
compileSdkVersion 33
defaultConfig {
applicationId "com.example.myapp"
minSdkVersion 21
targetSdkVersion 33
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
// 여기에 namespace를 추가합니다.
namespace 'com.example.myapp'
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
namespace를 명시 해줬음에도 불구하고 namespace를 명시하라는 이슈가 발생한다면,
project 버전 gradle에 아래와 같은 소스를 추가한다.
build.gradle (project)
// namespace 이슈 보완
subprojects {
afterEvaluate { project ->
if (project.hasProperty('android')) {
project.android {
if (namespace == null) {
namespace = project.group
}
}
}
}
}
이렇게까지 설정하면, Kotlin 버전도 올리고 Gradle도 올릴 수 있다.
728x90
반응형
'Android > 에러 및 이슈 사항' 카테고리의 다른 글
[Android/Error] Constant expression required (0) | 2024.07.03 |
---|---|
[Android/Error] AGP 버전에 맞춰 Android Studio 업데이트 하기 (0) | 2024.06.28 |
[Android/Error] Android Webview에서 SSL 인증서 Error (0) | 2024.06.26 |
[Android/Error]Installed Build Tools revision 33.0.2 is corrupted. (1) | 2024.06.25 |
[Android/Error]This version of the Android Support plugin for IntelliJ IDEA (0) | 2023.02.25 |