Gradle sürüm katalogları, bağımlılıkları ve eklentileri ölçeklenebilir bir şekilde eklemenize ve bakımını yapmanıza olanak tanır. Gradle sürüm kataloglarını kullanmak, birden fazla modülünüz olduğunda bağımlılıkları ve eklentileri yönetmeyi kolaylaştırır. Bağımlılık adlarını ve sürümlerini tek tek derleme dosyalarına sabit kodlamak ve bir bağımlılığı yükseltmeniz gerektiğinde her girişi güncellemek yerine, çeşitli modüllerin Android Studio yardımıyla tür güvenli bir şekilde başvurabileceği merkezi bir sürüm kataloğu oluşturabilirsiniz.
Bu sayfada, Android uygulamanızı sürüm kataloglarına taşıma hakkında temel bilgiler verilmektedir. Daha fazla bilgi edinmek için Derleme bağımlılıkları ekleme ve Gradle belgelerine bakın.
Sürüm kataloğu dosyası oluşturma
Öncelikle bir sürüm kataloğu dosyası oluşturun. Kök projenizin gradle
klasöründe libs.versions.toml
adlı bir dosya oluşturun. Gradle, kataloğu varsayılan olarak libs.versions.toml
dosyasında arar. Bu nedenle, bu varsayılan adı kullanmanızı öneririz.
libs.versions.toml
dosyanıza şu bölümleri ekleyin:
[versions]
[libraries]
[plugins]
Bölümler aşağıdaki şekilde kullanılır:
versions
bloğunda, bağımlılıklarınızın ve eklentilerinizin sürümlerini içeren değişkenleri tanımlayın. Bu değişkenleri sonraki bloklarda (libraries
veplugins
blokları) kullanırsınız.libraries
bloğunda bağımlılıklarınızı tanımlayın.plugins
bloğunda eklentilerinizi tanımlayın.
Taşıma adımları
Adımları belirtilen sırayla uygulamanızı öneririz. Derlemeler, derleme komut dosyalarındaki ve kataloglardaki bağımlılıkları ve eklentileri aynı anda kullanabilir. Bu nedenle, bağımlılıklarınızı ve eklentilerinizi ayrı ayrı taşımak için zaman ayırın.
Taşıma süreci:
- Yeni girişi kataloga ekleyin.
- Android projenizi senkronize edin.
- Önceki dize bildirimini katalog türü güvenli erişimciyle değiştirin.
Bağımlılıkları taşıma
libs.versions.toml
dosyasının hem versions
hem de libraries
bölümlerine her bağımlılık için bir giriş ekleyin. Projenizi senkronize edin ve ardından derleme dosyalarındaki bildirimlerini katalog adlarıyla değiştirin.
Bu kod snippet'i, bağımlılık kaldırılmadan önce build.gradle.kts
dosyasını gösterir:
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.9.0") }
Groovy
dependencies { implementation 'androidx.core:core-ktx:1.9.0' }
Bu kod snippet'i, bağımlılığın versioncatalog dosyasında nasıl tanımlanacağını gösterir:
[versions]
ktx = "1.9.0"
[libraries]
androidx-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }
Kataloglardaki bağımlılıklar bloğu için önerilen adlandırma, derleme dosyalarınızda daha iyi kod tamamlama yardımı için kebab case'dir (ör. androidx-ktx
).
Bağımlılık gerektiren her modülün build.gradle.kts
dosyasında, bağımlılıkları TOML dosyasında tanımladığınız adlarla tanımlayın.
Kotlin
dependencies { implementation(libs.androidx.ktx) }
Groovy
dependencies { implementation libs.androidx.ktx }
Eklentileri taşıma
libs.versions.toml
dosyasının hem sürümler hem de eklentiler bölümlerine her eklenti için bir giriş ekleyin. Projenizi senkronize edin ve ardından derleme dosyalarındaki plugins{}
bloğunda yer alan bildirimlerini katalog adlarıyla değiştirin.
Bu kod snippet'i, eklenti kaldırılmadan önce build.gradle.kts
dosyasını gösterir:
Kotlin
// Top-level `build.gradle.kts` file plugins { id("com.android.application") version "7.4.1" apply false } // Module-level `build.gradle.kts` file plugins { id("com.android.application") }
Groovy
// Top-level `build.gradle` file plugins { id 'com.android.application' version '7.4.1' apply false } // Module-level `build.gradle` file plugins { id 'com.android.application' }
Bu kod snippet'inde, eklentinin sürüm kataloğu dosyasında nasıl tanımlanacağı gösterilmektedir:
[versions]
androidGradlePlugin = "7.4.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
Bağımlılıklarda olduğu gibi, plugins
blok kataloğu
girişleri için önerilen biçimlendirme, derleme dosyalarınızda daha iyi kod tamamlama yardımı sağlamak amacıyla kebab case'dir (ör. android-application
).
Aşağıdaki kodda, com.android.application
eklentisinin üst düzey ve modül düzeyindeki build.gradle.kts
dosyalarında nasıl tanımlanacağı gösterilmektedir. Sürüm kataloğu dosyasından gelen eklentiler için alias
, sürüm kataloğu dosyasından gelmeyen eklentiler için (ör. kural eklentileri) id
kullanın.
Kotlin
// Top-level build.gradle.kts plugins { alias(libs.plugins.android.application) apply false } // module build.gradle.kts plugins { alias(libs.plugins.android.application) }
Groovy
// Top-level build.gradle plugins { alias libs.plugins.android.application apply false } // module build.gradle plugins { alias libs.plugins.android.application }
Daha fazla bilgi
Sürüm kataloğunuzu yapılandırmayla ilgili ek seçenekler hakkında bilgi edinmek için aşağıdaki kaynaklara göz atın:
- The version catalog TOML file format (Sürüm kataloğu TOML dosya biçimi), katalog dosyanızı yapılandırmak için ek seçenekleri belgeler.
- Now in Android, sürüm kataloglarını kullanan örnek uygulamamızdır.