إدارة المستودعات عن بُعد

عندما تكون الاعتمادية شيئًا آخر غير مكتبة محلية أو شجرة ملفات، يبحث Gradle عن الملفات في أي مستودعات على الإنترنت يتم تحديدها في قسم dependencyResolutionManagement { repositories {...} } من ملف settings.gradle. يحدّد ترتيب إدراج كل مستودع الترتيب الذي يبحث به Gradle في المستودعات عن كل اعتمادية للمشروع. على سبيل المثال، إذا كانت هناك اعتمادية متاحة من المستودعَين A وB، وأدرجت A أولاً، سينزّل Gradle الاعتمادية من المستودع A.

تحدّد مشاريع "استوديو 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:

يمكنك الاطّلاع على جميع العناصر المتاحة في فهرس مستودع 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 في الوحدة. على سبيل المثال، تبدو مكتبة appcompat على النحو التالي:

Kotlin

dependencies {
    implementation("com.android.support:appcompat-v7:28.0.0")
}

أنيق

dependencies {
    implementation 'androidx.appcompat:appcompat:1.7.0'
}

ومع ذلك، إذا كنت تحاول استخدام إصدار قديم من المكتبات المذكورة أعلاه وتعذّر عليك تثبيت الاعتمادية، يعني ذلك أنّ الإصدار غير متاح في مستودع 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 Manager

بالنسبة إلى المكتبات غير المتوفّرة من مستودع Maven من Google (عادةً ما تكون إصدارات المكتبة قديمة)، عليك تنزيل حزمة مستودع Google المتاحة بلا إنترنت من SDK Manager.

بعد ذلك، يمكنك إضافة هذه المكتبات إلى قسم dependencies كالمعتاد.

يتم حفظ المكتبات المتوفّرة بلا إنترنت في android_sdk/extras/.