fix(build): Room KAPT→KSP 마이그레이션 및 configuration cache 비활성화로 Kotlin 2.0 빌드 오류 해결

- Room을 2.6.1로 업데이트하고 KAPT를 KSP로 전환
- room-rxjava3 의존성 추가(RxJava3 반환 타입 지원)
- ObjectBox 플러그인과 충돌 회피를 위해 configuration cache 비활성화
- AGP 8.4.2 + Kotlin 2.0.21 환경에서 빌드 성공 확인
This commit is contained in:
2025-10-22 13:50:42 +09:00
parent dd236d8f19
commit bc581d763b
4 changed files with 12 additions and 10 deletions

View File

@@ -4,7 +4,7 @@ plugins {
id 'com.google.gms.google-services'
id 'com.google.android.gms.oss-licenses-plugin'
id 'kotlin-kapt'
id 'com.google.devtools.ksp'
id 'kotlin-parcelize'
id 'org.jlleitschuh.gradle.ktlint'
@@ -181,9 +181,10 @@ dependencies {
implementation "com.android.billingclient:billing-ktx:6.2.0"
// ROOM
kapt "androidx.room:room-compiler:2.5.0"
implementation "androidx.room:room-ktx:2.5.0"
implementation "androidx.room:room-runtime:2.5.0"
ksp "androidx.room:room-compiler:2.6.1"
implementation "androidx.room:room-ktx:2.6.1"
implementation "androidx.room:room-runtime:2.6.1"
implementation "androidx.room:room-rxjava3:2.6.1"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"

View File

@@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
kotlin_version = '1.8.0'
kotlin_version = '2.0.21'
}
repositories {
google()
@@ -17,9 +17,10 @@ buildscript {
}
plugins {
id 'com.android.application' version '8.1.1' apply false
id 'com.android.library' version '8.1.1' apply false
id 'org.jetbrains.kotlin.android' version '1.8.20' apply false
id 'com.android.application' version '8.4.2' apply false
id 'com.android.library' version '8.4.2' apply false
id 'org.jetbrains.kotlin.android' version '2.0.21' apply false
id 'com.google.devtools.ksp' version '2.0.21-1.0.25' apply false
id "org.jlleitschuh.gradle.ktlint" version "11.2.0"
id 'com.google.gms.google-services' version '4.3.15' apply false

View File

@@ -20,7 +20,7 @@ kotlin.code.style=official
# Enables namespacing of each library's R class so that its R class includes only the
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
org.gradle.configuration-cache=true
org.gradle.configuration-cache=false
android.nonTransitiveRClass=true
android.defaults.buildfeatures.buildconfig=true
android.enableJetifier=true

View File

@@ -1,6 +1,6 @@
#Sun Jul 23 18:26:44 KST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists