Uzak depoları yönet

Bağımlılığınız yerel bir kitaplık veya dosya ağacı dışında bir şey olduğunda Gradle, dosyanızın dependencyResolutionManagement { repositories {...} } bloğunda belirtilen çevrimiçi depolarda dosyaları arar. 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()
    }
}

Eski

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 Depoları 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:

Mevcut tüm yapıları Google'ın Maven deposu dizininde görebilirsiniz (programatik 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/".
    }
}

Eski

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'
}

Bununla birlikte, yukarıdaki kitaplıkların daha eski bir sürümünü kullanmaya çalışıyorsanız ve bağımlılığınız başarısız olursa bu sürüm Maven deposunda bulunmaz. 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 çevrimdışı Google Repository paketini SDK Manager'dan indirmeniz gerekir.

Sonra bu kitaplıkları her zamanki gibi dependencies blokunuza ekleyebilirsiniz.

Çevrimdışı kitaplıklar android_sdk/extras/ dosyasına kaydedilir.