Pour Gradle, utilisez le plug-in Gradle du compilateur Compose pour configurer Compose.
Configurer avec les catalogues de versions Gradle
Configurez le plug-in Gradle du compilateur Compose :
- Dans le fichier
libs.versions.toml, supprimez toute référence au compilateur Compose. Dans les sections
versionsetplugins, ajoutez la nouvelle dépendance :[versions] kotlin = "2.3.21" [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" }Dans le fichier
build.gradle.ktsracine du projet, ajoutez les éléments suivants à la sectionplugins.plugins { // Existing plugins alias(libs.plugins.compose.compiler) apply false }Dans chaque module qui utilise Compose, appliquez le plug-in :
plugins { // Existing plugins alias(libs.plugins.compose.compiler) }
Le projet doit maintenant être compilé s'il utilisait la configuration par défaut. S'il avait configuré des options personnalisées sur le compilateur Compose, suivez la section suivante.
Configurer le compilateur Compose sans les catalogues de versions Gradle
Ajoutez le plug-in aux fichiers build.gradle.kts associés aux modules dans lesquels Compose est utilisé :
plugins {
id("org.jetbrains.kotlin.plugin.compose") version "2.3.21" // this version matches your Kotlin version
}
Ajoutez le chemin de classe au fichier build.gradle.kts de premier niveau de votre projet :
buildscript {
dependencies {
classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.3.21")
}
}
Options de configuration avec le plug-in Gradle du compilateur Compose
Pour configurer le compilateur Compose à l'aide du plug-in Gradle, ajoutez le bloc composeCompiler au fichier build.gradle.kts du module au niveau supérieur :
android { … }
composeCompiler {
reportsDestination = layout.buildDirectory.dir("compose_compiler")
stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}
Pour obtenir la liste complète des options disponibles, consultez la documentation.
Configurer les dépendances Compose
Utilisez toujours la dernière version de la nomenclature Compose : 2026.06.00.
Définissez l'indicateur compose sur true dans le bloc BuildFeatures d'Android pour
activer la fonctionnalité Compose dans Android Studio.
Ajoutez la définition suivante au fichier build.gradle de votre application :
Groovy
android {
buildFeatures {
compose true
}
}
Kotlin
android {
buildFeatures {
compose = true
}
}
Ajoutez la nomenclature Compose et le sous-ensemble des dépendances des bibliothèques Compose :
Groovy
dependencies {
def composeBom = platform('androidx.compose:compose-bom:2026.06.00')
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.13.0'
// Optional - Integration with ViewModels
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0'
// 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.06.00")
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.13.0")
// Optional - Integration with ViewModels
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0")
// Optional - Integration with LiveData
implementation("androidx.compose.runtime:runtime-livedata")
// Optional - Integration with RxJava
implementation("androidx.compose.runtime:runtime-rxjava2")
}
Compatibilité entre compileSdk et le plug-in Android Gradle
Les versions de la bibliothèque Compose adoptent en permanence les dernières versions de compileSdk pour fournir un accès aux dernières fonctionnalités Android. Les versions plus récentes de compileSdk nécessitent des versions plus récentes du plug-in Android Gradle. Par conséquent, l'adoption de nouvelles versions de Compose nécessite également que les projets adoptent de nouvelles versions du plug-in Android Gradle. Nous vous recommandons de maintenir la version compileSdk de votre projet à jour avec les dernières versions publiées. compileSdk n'est pas lié à targetSdk.
Par exemple, à partir de Compose 1.12.0, les projets doivent utiliser compileSdk 37 et le plug-in Android Gradle (AGP) 9.
Pour vérifier quelle version d'AGP est compatible avec différents niveaux d'API, consultez la documentation sur la compatibilité des niveaux d'API avec le plug-in Android Gradle.