Настройте плагин Compose Compiler Gradle.

Пользователям Gradle можно предложить плагин Compose Compiler Gradle, который упростит настройку и конфигурацию Compose.

Настройка с использованием каталогов версий Gradle.

В следующих инструкциях описано, как настроить плагин Compose Compiler для Gradle:

  1. В файле libs.versions.toml удалите все ссылки на компилятор Compose.
  2. В разделе плагинов добавьте следующую новую зависимость.
[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" }
  1. В корневой папке вашего проекта в файл build.gradle.kts добавьте следующий фрагмент кода в раздел plugins.
plugins {
   // Existing plugins
   alias(libs.plugins.compose.compiler) apply false
}
  1. В каждом модуле, использующем Compose, примените плагин следующим образом.
plugins {
   // Existing plugins
   alias(libs.plugins.compose.compiler)
}

Теперь ваше приложение должно собираться и компилироваться, если вы используете настройки по умолчанию. Если вы настроили пользовательские параметры в компиляторе Compose, см. следующий раздел.

Настройка компилятора Compose без каталогов версий Gradle.

Добавьте следующий плагин в файлы build.gradle.kts , связанные с модулями, которые вы используете в Compose:

plugins {
    id("org.jetbrains.kotlin.plugin.compose") version "2.0.0" // this version matches your Kotlin version
}

Возможно, вам также потребуется добавить этот путь к классам в файл build.gradle.kts вашего проекта верхнего уровня:

buildscript {
    dependencies {
        classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.0.0")
    }
}

Параметры конфигурации плагина Compose Compiler Gradle

Для настройки компилятора Compose с помощью плагина Gradle добавьте блок composeCompiler в файл build.gradle.kts модуля на самом верхнем уровне.

android {  }

composeCompiler {
    reportsDestination = layout.buildDirectory.dir("compose_compiler")
    stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}

Полный список доступных опций см. в документации .

Настройка зависимостей Compose

Добавьте следующее определение в файл build.gradle вашего приложения:

Классный

android {
    buildFeatures {
        compose true
    }
}

Котлин

android {
    buildFeatures {
        compose = true
    }
}

Установка флага compose в true внутри блока Android BuildFeatures включает функциональность Compose в Android Studio.

Наконец, добавьте BOM Compose и необходимое подмножество зависимостей библиотеки Compose в ваши зависимости из следующего блока:

Классный

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'

}

Котлин

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")

}