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

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

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

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

इसके अलावा, किसी खास मेवन या आइवी रिपॉज़िटरी को इस तरह से भी एलान किया जा सकता है:

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 रिपॉज़िटरी गाइड देखें.

Google का Maven डेटा स्टोर करने की जगह

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

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

अपने बिल्ड में इनमें से किसी एक लाइब्रेरी को जोड़ने के लिए, अपनी टॉप-लेवल build.gradle.kts फ़ाइल में Google की Maven रिपॉज़िटरी को शामिल करें:

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 रिपॉज़िटरी पैकेज डाउनलोड करना होगा.

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

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