Bağımlılığınız yerel bir kitaplık veya dosya ağacı dışında bir şey olduğunda Gradle, dosyanızın settings.gradle
bloğunda belirtilen çevrimiçi depolarda dosyaları arar.dependencyResolutionManagement { repositories {...} }
Her bir deposu listelediğiniz sıra, Gradle'in her proje bağımlılığı için depoları aradığı sırayı belirler.
Örneğin, bir bağımlılık hem A hem de B deposunda mevcutsa ve önce A'yı listelerseniz Gradle, bağımlılık A deposundan indirir.
Varsayılan olarak yeni Android Studio projeleri, projenin settings.gradle
dosyasında depolama yeri olarak Google'ın Maven deposunu ve Maven merkezi deposunu belirtir. Aşağıda gösterildiği gibi:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
Groovy
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
Yerel bir depodan bir öğe almak istiyorsanız mavenLocal()
simgesini kullanın:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() mavenLocal() } }
Groovy
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() mavenLocal() } }
Dilerseniz belirli Maven veya Ivy depolarını aşağıdaki gibi de belirtebilirsiniz:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { maven(url = "https://repo.example.com/maven2") maven(url = "file://local/repo/") ivy(url = "https://repo.example.com/ivy") } }
Groovy
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { maven { url 'https://repo.example.com/maven2' } maven { url 'file://local/repo/' } ivy { url 'https://repo.example.com/ivy' } } }
Daha fazla bilgi için Gradle Repositories kılavuzuna bakın.
Google'ın Maven deposu
Aşağıdaki Android kitaplıklarının en son sürümleri Google'ın Maven deposunda mevcuttur:
- AndroidX Kitaplıkları
- Mimari Bileşenleri Kitaplığı
- Sınırlama Düzeni Kitaplığı
- AndroidX Test
- Veri Bağlama Kitaplığı
- Android Hazır Uygulama Kitaplığı
- Wear OS
- Google Play Hizmetleri
- Google Play Faturalandırma Kitaplığı
- Firebase
Mevcut tüm yapıları Google'ın Maven deposu dizininde görebilirsiniz (Programlı erişim için aşağıya bakın).
Bu kitaplıklardan birini derlemenize eklemek için Google'ın Maven deposunu üst düzey build.gradle.kts
dosyanıza ekleyin:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() // If you're using a version of Gradle lower than 4.1, you must instead use: // maven { // url = "https://maven.google.com" // } // An alternative URL is "https://dl.google.com/dl/android/maven2/". } }
Groovy
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() // If you're using a version of Gradle lower than 4.1, you must instead use: // maven { // url 'https://maven.google.com' // } // An alternative URL is 'https://dl.google.com/dl/android/maven2/'. } }
Ardından, istediğiniz kitaplığı modülünüzün dependencies
bloğuna ekleyin.
Örneğin,appcompat kitaplığı şu şekilde görünür:
Kotlin
dependencies { implementation("com.android.support:appcompat-v7:28.0.0") }
Groovy
dependencies { implementation 'androidx.appcompat:appcompat:1.7.0' }
Ancak yukarıdaki kitaplıkların eski bir sürümünü kullanmaya çalışıyorsanız ve bağımlılık başarısız oluyorsa kitaplık Maven deposunda mevcut değildir ve bunun yerine kitaplığı çevrimdışı depodan almanız gerekir.
Programatik erişim
Google'ın Maven yapılarına programatik erişim için maven.google.com/master-index.xml adresinden yapı gruplarının XML listesini alabilirsiniz. Ardından, grupların kitaplık adlarını ve sürümlerini şu adreste görüntüleyebilirsiniz:
maven.google.com/group_path/group-index.xml
Örneğin, android.arch.lifecycle grubundaki kitaplıklar maven.google.com/android/arch/lifecycle/group-index.xml adresinde listelenir.
POM ve JAR dosyalarını şu adresten de indirebilirsiniz:
maven.google.com/group_path/library/version /library-version.ext
Örneğin: maven.google.com/android/arch/lifecycle/compiler/1.0.0/compiler-1. 0.0.pom.
SDK Yöneticisi'nden çevrimdışı depo
Google Maven deposunda bulunmayan kitaplıklar (genellikle eski kitaplık sürümleri) için SDK Yöneticisi'nden çevrimdışı Google Deposu paketini indirmeniz gerekir.
Ardından bu kitaplıkları her zamanki gibi dependencies
bloğunuza ekleyebilirsiniz.
Çevrimdışı kitaplıklar android_sdk/extras/
dosyasına kaydedilir.