Configura el complemento de Gradle del compilador de Compose
Para los usuarios de Gradle, puedes usar el complemento de Gradle del compilador de Compose para facilitar la configuración de Compose.
Configura con catálogos de versiones de Gradle
En las siguientes instrucciones, se describe cómo puedes configurar el complemento de Gradle del compilador de Compose:
- En tu archivo
libs.versions.toml, quita cualquier referencia al compilador de Compose. - En la sección
versionsyplugins, agrega la siguiente dependencia nueva:
[versions]
kotlin = "2.3.10"
[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" }
- En el archivo
build.gradle.ktsraíz de tu proyecto, agrega el siguiente fragmento a la secciónplugins.
plugins {
// Existing plugins
alias(libs.plugins.compose.compiler) apply false
}
- En cada módulo que usa Compose, aplica el complemento de la siguiente manera.
plugins {
// Existing plugins
alias(libs.plugins.compose.compiler)
}
Tu app ahora debería compilarse si usas la configuración predeterminada. Si configuraste opciones personalizadas en el compilador de Compose, consulta la siguiente sección.
Configura el compilador de Compose sin catálogos de versiones de Gradle
Agrega el
siguiente complemento a build.gradle.kts archivos asociados con los módulos que usas
Compose:
plugins {
id("org.jetbrains.kotlin.plugin.compose") version "2.3.10" // this version matches your Kotlin version
}
Es posible que también debas agregar esta ruta de clase al archivo de tu proyecto de nivel superior
build.gradle.kts:
buildscript {
dependencies {
classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.3.10")
}
}
Opciones de configuración con el complemento de Gradle del compilador de Compose
Para configurar el compilador de Compose con el complemento de Gradle, agrega el
composeCompiler bloque al archivo build.gradle.kts del módulo en el nivel superior.
android { … }
composeCompiler {
reportsDestination = layout.buildDirectory.dir("compose_compiler")
stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}
Para ver la lista completa de opciones disponibles, consulta la documentación.
Configura dependencias de Compose
Agrega la siguiente definición al archivo build.gradle de tu app:
Groovy
android {
buildFeatures {
compose true
}
}
Kotlin
android {
buildFeatures {
compose = true
}
}
Si estableces la marca compose en true dentro del BuildFeatures
de Android, se habilitará la funcionalidad de Compose en Android Studio.
Por último, agrega la BoM de Compose y el subconjunto de dependencias de la biblioteca de Compose que necesitas a tus dependencias del siguiente bloque:
Groovy
dependencies {
def composeBom = platform('androidx.compose:compose-bom:2026.02.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.12.4'
// 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.02.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.12.4")
// 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")
}