元は、こんな感じで問題ありませんでした。
ext.versions = [
'kotlin' : '1.6.21'
'compose' : '1.2.0-rc02'
]
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${versions.kotlin}"
}
composeOptions {
kotlinCompilerExtensionVersion versions.compose
}
implementation "androidx.compose.material:material:${versions.compose}"
implementation "androidx.compose.material:material-icons-extended:${versions.compose}"
implementation "androidx.compose.ui:ui:${versions.compose}"
implementation "androidx.compose.ui:ui-tooling-preview:${versions.compose}"
debugImplementation "androidx.compose.ui:ui-tooling:${versions.compose}"
debugImplementation "androidx.compose.ui:ui-test-manifest:${versions.compose}"
androidTestImplementation "androidx.compose.ui:ui-test-junit4:${versions.compose}"
アップデート通知が出たので、いつものように
1.3.0-alpha01
に上げました。
ext.versions = [
'kotlin' : '1.6.21'
'compose': '1.3.0-alpha01'
]
...
ビルドできなくなりました。
なんでや。
■ kotlin と compose の関係
kotlin と compose には、お互いに対応するバージョンが決まっていましたね!
👉 Compose to Kotlin Compatibility Map | Android Developers
あれ、compose「1.3.0-alpha01」がないよ!
■ 「Compose」 は1つではない
Jetpack Compose is multiple things under one name:
- A compiler plugin that helps efficiently calculate the difference between two in-memory tree data structures
- A new UI toolkit for Android
- A new UI toolkit for desktop apps (Compose Desktop)
どうやら、Android でいうと compose は
- compose compiler
- compose ui toolkit
の2つに分かれているようです
■ まとめ
上記2つのことを考慮して書き換えます。
ext.versions = [
'kotlin' : '1.7.0'
'compose' : '1.2.0', // compose-compiler
'composeUi' : '1.3.0-alpha01' // compose-ui
]
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${versions.kotlin}"
}
composeOptions {
kotlinCompilerExtensionVersion versions.compose // compose-compiler
}
// compose-ui
implementation "androidx.compose.material:material:${versions.composeUi}"
implementation "androidx.compose.material:material-icons-extended:${versions.composeUi}"
implementation "androidx.compose.ui:ui:${versions.composeUi}"
implementation "androidx.compose.ui:ui-tooling-preview:${versions.composeUi}"
debugImplementation "androidx.compose.ui:ui-tooling:${versions.composeUi}"
debugImplementation "androidx.compose.ui:ui-test-manifest:${versions.composeUi}"
androidTestImplementation "androidx.compose.ui:ui-test-junit4:${versions.composeUi}"
関連ワード: Android・AndroidStudio・Google・Gradle・JetBrains・JetpackCompose・Kotlin・ライブラリ・初心者・開発