Compose Compiler-Gradle-Plug-in einrichten
Wenn Sie Gradle verwenden, können Sie das Compose Compiler Gradle-Plug-in verwenden, um das Einrichten und Konfigurieren von Compose zu vereinfachen.
Mit Gradle-Versionskatalogen einrichten
In der folgenden Anleitung erfahren Sie, wie Sie das Compose Compiler-Gradle-Plugin einrichten:
- Entfernen Sie in der Datei
libs.versions.tomlalle Verweise auf den Compose-Compiler. - Fügen Sie im Bereich „Plugins“ die folgende neue Abhängigkeit hinzu.
[versions]
kotlin = "2.0.0"
[plugins]
org-jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
// Add this line
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
- Fügen Sie in der Datei
build.gradle.ktsim Stammverzeichnis Ihres Projekts das folgende Snippet in den Abschnitt „plugins“ ein.
plugins {
// Existing plugins
alias(libs.plugins.compose.compiler) apply false
}
- Wenden Sie das Plug-in in jedem Modul, in dem Compose verwendet wird, so an:
plugins {
// Existing plugins
alias(libs.plugins.compose.compiler)
}
Ihre App sollte jetzt erstellt und kompiliert werden, wenn Sie die Standardeinrichtung verwenden. Wenn Sie benutzerdefinierte Optionen für den Compose-Compiler konfiguriert haben, lesen Sie den folgenden Abschnitt.
Compose-Compiler ohne Gradle-Versionskataloge einrichten
Fügen Sie das folgende Plug-in den build.gradle.kts-Dateien hinzu, die mit Modulen verknüpft sind, in denen Sie Compose verwenden:
plugins {
id("org.jetbrains.kotlin.plugin.compose") version "2.0.0" // this version matches your Kotlin version
}
Möglicherweise müssen Sie diesen Klassenpfad auch der Datei build.gradle.kts Ihres Projekts der obersten Ebene hinzufügen:
buildscript {
dependencies {
classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.0.0")
}
}
Konfigurationsoptionen mit dem Compose Compiler Gradle-Plug-in
Wenn Sie den Compose-Compiler mit dem Gradle-Plug-in konfigurieren möchten, fügen Sie den Block composeCompiler der Datei build.gradle.kts des Moduls auf oberster Ebene hinzu.
android { … }
composeCompiler {
reportsDestination = layout.buildDirectory.dir("compose_compiler")
stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}
Eine vollständige Liste der verfügbaren Optionen finden Sie in der Dokumentation.
Compose-Abhängigkeiten einrichten
Fügen Sie der Datei build.gradle Ihrer App die folgende Definition hinzu:
Groovy
android {
buildFeatures {
compose true
}
}
Kotlin
android {
buildFeatures {
compose = true
}
}
Wenn Sie das Flag compose im Android-Block BuildFeatures auf true setzen, wird die Compose-Funktionalität in Android Studio aktiviert.
Fügen Sie schließlich die Compose-BOM und die Teilmenge der Compose-Bibliotheksabhängigkeiten, die Sie benötigen, aus dem folgenden Block zu Ihren Abhängigkeiten hinzu:
Groovy
dependencies {
def composeBom = platform('androidx.compose:compose-bom:2026.01.01')
implementation composeBom
androidTestImplementation composeBom
// Choose one of the following:
// Material Design 3
implementation 'androidx.compose.material3:material3'
// or skip Material Design and build directly on top of foundational components
implementation 'androidx.compose.foundation:foundation'
// or only import the main APIs for the underlying toolkit systems,
// such as input and measurement/layout
implementation 'androidx.compose.ui:ui'
// Android Studio Preview support
implementation 'androidx.compose.ui:ui-tooling-preview'
debugImplementation 'androidx.compose.ui:ui-tooling'
// UI Tests
androidTestImplementation 'androidx.compose.ui:ui-test-junit4'
debugImplementation 'androidx.compose.ui:ui-test-manifest'
// Optional - Add window size utils
implementation 'androidx.compose.material3.adaptive:adaptive'
// Optional - Integration with activities
implementation 'androidx.activity:activity-compose:1.11.0'
// Optional - Integration with ViewModels
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.8.5'
// Optional - Integration with LiveData
implementation 'androidx.compose.runtime:runtime-livedata'
// Optional - Integration with RxJava
implementation 'androidx.compose.runtime:runtime-rxjava2'
}
Kotlin
dependencies {
val composeBom = platform("androidx.compose:compose-bom:2026.01.01")
implementation(composeBom)
androidTestImplementation(composeBom)
// Choose one of the following:
// Material Design 3
implementation("androidx.compose.material3:material3")
// or skip Material Design and build directly on top of foundational components
implementation("androidx.compose.foundation:foundation")
// or only import the main APIs for the underlying toolkit systems,
// such as input and measurement/layout
implementation("androidx.compose.ui:ui")
// Android Studio Preview support
implementation("androidx.compose.ui:ui-tooling-preview")
debugImplementation("androidx.compose.ui:ui-tooling")
// UI Tests
androidTestImplementation("androidx.compose.ui:ui-test-junit4")
debugImplementation("androidx.compose.ui:ui-test-manifest")
// Optional - Add window size utils
implementation("androidx.compose.material3.adaptive:adaptive")
// Optional - Integration with activities
implementation("androidx.activity:activity-compose:1.11.0")
// Optional - Integration with ViewModels
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.5")
// Optional - Integration with LiveData
implementation("androidx.compose.runtime:runtime-livedata")
// Optional - Integration with RxJava
implementation("androidx.compose.runtime:runtime-rxjava2")
}