Wenn Ihre Abhängigkeit keine lokale Bibliothek oder kein Dateibaum ist, sucht Gradle in den Online-Repositories, die im Block dependencyResolutionManagement { repositories {...} }
der Datei settings.gradle
angegeben sind. Die Reihenfolge, in der Sie die einzelnen Repositories auflisten, bestimmt die Reihenfolge, in der Gradle die Repositories nach jeder Projektabhängigkeit durchsucht.
Wenn eine Abhängigkeit beispielsweise sowohl in Repository A als auch in Repository B verfügbar ist und Sie A zuerst auflisten, lädt Gradle die Abhängigkeit aus Repository A herunter.
Bei neuen Android Studio-Projekten werden standardmäßig das Maven-Repository von Google und das Maven Central Repository als Repository-Speicherorte in der settings.gradle
-Datei des Projekts angegeben, wie unten gezeigt:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
Groovy
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
Wenn Sie etwas aus einem lokalen Repository benötigen, verwenden Sie mavenLocal()
:
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() } }
Sie können auch bestimmte Maven- oder Ivy-Repositories so deklarieren:
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") } }
Cool
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' } } }
Weitere Informationen finden Sie in der Anleitung zu Gradle Repositories.
Maven-Repository von Google
Die neuesten Versionen der folgenden Android-Bibliotheken sind im Maven-Repository von Google verfügbar:
- AndroidX-Bibliotheken
- Bibliothek mit Architekturkomponenten
- Constraint Layout Library
- AndroidX Test
- Data Binding Library
- Android Instant App-Bibliothek
- Wear OS
- Google Play-Dienste
- Google Play Billing Library
- Firebase
Alle verfügbaren Artefakte finden Sie im Maven-Repository-Index von Google. Informationen zum programmatischen Zugriff
Wenn Sie Ihrem Build eine dieser Bibliotheken hinzufügen möchten, fügen Sie das Maven-Repository von Google in die Datei build.gradle.kts
auf oberster Ebene ein:
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/". } }
Cool
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/'. } }
Fügen Sie dann die gewünschte Bibliothek dem dependencies
-Block Ihres Moduls hinzu.
Die appcompat-Bibliothek sieht beispielsweise so aus:
Kotlin
dependencies { implementation("com.android.support:appcompat-v7:28.0.0") }
Groovy
dependencies { implementation 'androidx.appcompat:appcompat:1.7.0' }
Wenn Sie jedoch eine ältere Version der oben genannten Bibliotheken verwenden möchten und die Abhängigkeit fehlschlägt, ist sie im Maven-Repository nicht verfügbar. Sie müssen die Bibliothek stattdessen aus dem Offline-Repository abrufen.
Programmatischer Zugriff
Für den programmatischen Zugriff auf die Maven-Artefakte von Google können Sie eine XML-Liste der Artefaktgruppen von maven.google.com/master-index.xml abrufen. Die Namen und Versionen der Bibliotheken für jede Gruppe finden Sie hier:
maven.google.com/group_path/group-index.xml
Bibliotheken in der Gruppe „android.arch.lifecycle“ sind beispielsweise unter maven.google.com/android/arch/lifecycle/group-index.xml aufgeführt.
Sie können die POM- und JAR-Dateien auch unter folgenden Links herunterladen:
maven.google.com/group_path/library/version /library-version.ext
Beispiel: maven.google.com/android/arch/lifecycle/compiler/1.0.0/compiler-1. 0.0.pom.
Offline-Repository aus SDK Manager
Für Bibliotheken, die nicht im Google Maven-Repository verfügbar sind (in der Regel ältere Bibliotheksversionen), müssen Sie das Offline-Paket Google Repository aus dem SDK Manager herunterladen.
Anschließend kannst du diese Bibliotheken wie gewohnt deinem dependencies
-Block hinzufügen.
Die Offlinebibliotheken werden in android_sdk/extras/
gespeichert.