عندما تكون تبعيتك شيء آخر غير المكتبة المحلية أو شجرة الملفات،
يبحث Gradle عن الملفات في أي مستودعات على الإنترنت تم تحديدها في مجموعة dependencyResolutionManagement { repositories {...} }
من
ملف settings.gradle
. يحدد الترتيب الذي تسرد به كل مستودع الترتيب الذي يبحث به Gradle
في مستودعات كل تبعية مشروع.
على سبيل المثال، إذا كانت التبعية متاحة من كل من المستودع "أ" و"ب"، وقمت
بإدراج "أ" أولاً، يقوم Gradle بتنزيل التبعية من المستودع "أ".
تحدّد مشاريع "استوديو Android" الجديدة تلقائيًا مستودع Maven من Google، ومستودع Maven المركزي كمواقع جغرافية للمستودع في ملف settings.gradle
الخاص بالمشروع، كما هو موضّح أدناه:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
رائع
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } }
إذا أردت الحصول على شيء من مستودع محلي، استخدِم mavenLocal()
:
Kotlin
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() mavenLocal() } }
رائع
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() mavenLocal() } }
أو يمكنك الإعلان عن مستودعات Maven أو Ivy محددة كما يلي:
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") } }
رائع
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' } } }
لمزيد من المعلومات، يُرجى الاطّلاع على دليل مستودعات Gradle.
مستودع Maven من Google
تتوفّر أحدث إصدارات لمكتبات Android التالية في مستودع Maven من Google:
- مكتبات AndroidX
- مكتبة المكوّنات المعمارية
- مكتبة تنسيقات القيود
- اختبار AndroidX
- مكتبة ربط البيانات
- مكتبة تطبيقات Android الفورية
- نظام التشغيل Wear OS
- خدمات Google Play
- مكتبة الفوترة في Google Play
- Firebase
يمكنك الاطّلاع على جميع العناصر المتاحة في فهرس مستودع Maven من Google (راجِع المعلومات الواردة أدناه للاطّلاع على الوصول الآلي).
لإضافة إحدى هذه المكتبات إلى إصدارك، يمكنك تضمين مستودع Maven من Google في ملف build.gradle.kts
ذي المستوى الأعلى:
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/". } }
رائع
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/'. } }
بعد ذلك، أضِف المكتبة المطلوبة إلى وحدة dependencies
في الوحدة.
على سبيل المثال، تبدو مكتبة التطبيقات
على النحو التالي:
Kotlin
dependencies { implementation("com.android.support:appcompat-v7:28.0.0") }
رائع
dependencies { implementation 'androidx.appcompat:appcompat:1.6.1' }
ومع ذلك، إذا كنت تحاول استخدام إصدار أقدم من المكتبات المذكورة أعلاه وفشلت تبعيتك، فلن تكون متاحة في مستودع Maven وعليك بدلاً من ذلك الحصول على المكتبة من المستودع غير المتصل بالإنترنت.
الوصول الآلي
للوصول الآلي إلى عناصر Maven من Google، يمكنك الحصول على قائمة XML لمجموعات العناصر من maven.google.com/master-index.xml. بعد ذلك، يمكنك عرض أسماء المكتبات ونُسخها لأي مجموعة على الرابط التالي:
maven.google.com/group_path/group-index.xml
على سبيل المثال، يتم إدراج المكتبات في مجموعة android.arch.lifecycle من خلال maven.google.com/android/arch/lifecycle/group-index.xml.
يمكنك أيضًا تنزيل ملفات POM وJAR من خلال:
maven.google.com/group_path/library/version /library-version.ext
على سبيل المثال: maven.google.com/android/rc/lifecycle/compiler/1.0.0/compiler-1. 0.0.pom.
مستودع بلا اتصال بالإنترنت من "مدير SDK"
بالنسبة إلى المكتبات غير المتوفّرة من مستودع Google Maven (إصدارات المكتبة القديمة عادةً)، عليك تنزيل حزمة Google Repository بلا اتصال بالإنترنت من مدير SDK.
بعد ذلك، يمكنك إضافة هذه المكتبات إلى مجموعة dependencies
كالمعتاد.
يتم حفظ المكتبات المتوفّرة بلا إنترنت في
android_sdk/extras/
.