डेटा स्टोर करने की जगहें मैनेज करें

जब आपकी डिपेंडेंसी, लोकल लाइब्रेरी या फ़ाइल ट्री के अलावा कोई और चीज़ होती है, तो Gradle उन फ़ाइलों को उन ऑनलाइन रिपॉज़िटरी में खोजता है जो आपकी dependencyResolutionManagement { repositories {...} } फ़ाइल के dependencyResolutionManagement { repositories {...} } ब्लॉक में दी गई हैं.settings.gradle आपने जिस क्रम में हर रिपॉज़िटरी को लिस्ट किया है उसी क्रम में Gradle, हर प्रोजेक्ट डिपेंडेंसी के लिए रिपॉज़िटरी खोजता है. उदाहरण के लिए, अगर कोई डिपेंडेंसी, रिपॉज़िटरी A और B, दोनों से उपलब्ध है और आपने A को पहले लिस्ट किया है, तो Gradle, रिपॉज़िटरी A से डिपेंडेंसी डाउनलोड करेगा.

डिफ़ॉल्ट रूप से, नए Android Studio प्रोजेक्ट में Google की Maven रिपॉज़िटरी और Maven Central रिपॉज़िटरी को प्रोजेक्ट की settings.gradle फ़ाइल में रिपॉज़िटरी की जगहों के तौर पर सेट किया जाता है. जैसा कि यहां दिखाया गया है:

Kotlin

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}

Groovy

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()
    }
}

Groovy

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")
    }
}

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

ज़्यादा जानकारी के लिए, Gradle Repositories गाइड देखें.

Google की Maven रिपॉज़िटरी

Google की मेवन रिपॉज़िटरी में, Android की इन लाइब्रेरी के सबसे नए वर्शन उपलब्ध हैं:

Google के मेवन डेटाबेस के इंडेक्स पर जाकर, सभी उपलब्ध आर्टफ़ैक्ट देखे जा सकते हैं. प्रोग्राम के ज़रिए ऐक्सेस करने के बारे में जानने के लिए, नीचे देखें.

इनमें से किसी लाइब्रेरी को अपनी बिल्ड में जोड़ने के लिए, Google की Maven रिपॉज़िटरी को अपनी टॉप-लेवल 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/".
    }
}

Groovy

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")
}

Groovy

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

हालांकि, अगर आपको ऊपर दी गई लाइब्रेरी के पुराने वर्शन का इस्तेमाल करना है और आपकी डिपेंडेंसी काम नहीं करती है, तो इसका मतलब है कि यह Maven रिपॉज़िटरी में उपलब्ध नहीं है. ऐसे में, आपको लाइब्रेरी को ऑफ़लाइन रिपॉज़िटरी से डाउनलोड करना होगा.

प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस का ऐक्सेस

Google के Maven आर्टफ़ैक्ट को प्रोग्राम के हिसाब से ऐक्सेस करने के लिए, 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 से ऑफ़लाइन रिपॉज़िटरी

Google Maven रिपॉज़िटरी में उपलब्ध न होने वाली लाइब्रेरी (आम तौर पर, लाइब्रेरी के पुराने वर्शन) के लिए, आपको SDK Manager से Google Repository का ऑफ़लाइन पैकेज डाउनलोड करना होगा.

इसके बाद, इन लाइब्रेरी को अपने dependencies ब्लॉक में जोड़ा जा सकता है.

ऑफ़लाइन लाइब्रेरी, android_sdk/extras/ में सेव की जाती हैं.