عندما تكون التبعية هي شيء آخر غير مكتبة محلية أو شجرة ملفات،
يبحث 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/arch/lifecycle/compiler/1.0.0/compiler-1. 0.0.pom.
المستودع بلا إنترنت من "مدير حِزم تطوير البرامج (SDK)"
بالنسبة إلى المكتبات غير المتوفّرة من مستودع Google Maven (إصدارات المكتبة القديمة عادةً)، عليك تنزيل حزمة مستودع Google المتوفّرة بلا إنترنت من إدارة حِزم تطوير البرامج (SDK).
بعد ذلك، يمكنك إضافة هذه المكتبات إلى مجموعة "dependencies
" كالمعتاد.
يتم حفظ المكتبات غير المتصلة بالإنترنت في
android_sdk/extras/
.