Composeコンパイラ移行ガイド
ComposeコンパイラはGradleプラグインによって補完されており、これによりセットアップが簡素化され、コンパイラオプションへのアクセスが容易になります。 Android Gradleプラグイン(AGP)と一緒に適用すると、このComposeコンパイラプラグインは、AGPによって自動的に提供されるComposeコンパイラの座標(coordinates)を上書きします。
Composeコンパイラは、Kotlin 2.0.0以降、Kotlinリポジトリに統合されました。 これにより、ComposeコンパイラはKotlinと同時にリリースされ、常に同じバージョンのKotlinと互換性を持つようになるため、プロジェクトのKotlin 2.0.0以降への移行がスムーズになります。
プロジェクトで新しいComposeコンパイラプラグインを使用するには、Composeを使用する各モジュールにプラグインを適用してください。 移行方法の詳細については、Jetpack Composeプロジェクトの移行を参照してください。Compose Multiplatformプロジェクトについては、マルチプラットフォーム移行ガイドを参照してください。
Jetpack Composeプロジェクトの移行
1.9からKotlin 2.0.0以降に移行する場合、Composeコンパイラの取り扱い方法に応じてプロジェクト構成を調整する必要があります。構成管理を自動化するために、Kotlin GradleプラグインとComposeコンパイラGradleプラグインを使用することをお勧めします。
GradleプラグインによるComposeコンパイラの管理
Androidモジュールの場合:
- ComposeコンパイラGradleプラグインをGradleバージョンカタログに追加します。
[versions]
# ...
kotlin = "2.3.0"
[plugins]
# ...
org-jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }AGP 9.0.0以降を使用している場合、AGPにはKotlinのサポートが組み込まれているため、
org-jetbrains-kotlin-androidプラグインは不要になります。
- ルートの
build.gradle.ktsファイルにGradleプラグインを追加します。
plugins {
// ...
alias(libs.plugins.compose.compiler) apply false
}- Jetpack Composeを使用するすべてのモジュールにプラグインを適用します。
plugins {
// ...
alias(libs.plugins.compose.compiler)
}Jetpack Composeコンパイラのコンパイラオプションを使用している場合は、
composeCompiler {}ブロックで設定してください。詳細は コンパイラオプションの一覧 を参照してください。Composeコンパイラのアーティファクトを直接参照している場合は、それらの参照を削除して、Gradleプラグインに処理を任せることができます。
Gradleプラグインを使用せずにComposeコンパイラを使用する
Gradleプラグインを使用してComposeコンパイラを管理していない場合は、プロジェクト内の古いMavenアーティファクトへの直接参照を更新してください。
androidx.compose.compiler:compilerをorg.jetbrains.kotlin:kotlin-compose-compiler-plugin-embeddableに変更androidx.compose.compiler:compiler-hostedをorg.jetbrains.kotlin:kotlin-compose-compiler-pluginに変更
次のステップ
- ComposeコンパイラのKotlinリポジトリへの移行に関する Googleのアナウンス をご覧ください。
- Jetpack Composeを使用してAndroidアプリを構築している場合は、マルチプラットフォーム化の方法に関するガイド を確認してください。
