अगर आपकी डिपेंडेंसी, स्थानीय लाइब्रेरी या फ़ाइल ट्री के अलावा कोई और है, तो Gradle, settings.gradle फ़ाइल के dependencyResolutionManagement { repositories {...} } ब्लॉक में बताई गई ऑनलाइन रिपॉज़िटरी में फ़ाइलें ढूंढता है. हर रिपॉज़िटरी को जिस क्रम में लिस्ट किया जाता है, Gradle उसी क्रम में हर प्रोजेक्ट की डिपेंडेंसी के लिए रिपॉज़िटरी खोजता है.
उदाहरण के लिए, अगर कोई डिपेंडेंसी, रिपॉज़िटरी A और B, दोनों में उपलब्ध है और आपने A को पहले लिस्ट किया है, तो Gradle, रिपॉज़िटरी A से डिपेंडेंसी डाउनलोड करता है.
डिफ़ॉल्ट रूप से, नए Android Studio प्रोजेक्ट, Google की Maven रिपॉज़िटरी और
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 रिपॉज़िटरी के बारे में गाइड देखें.
Google की Maven रिपॉज़िटरी
Google की Maven रिपॉज़िटरी पर, Android की इन लाइब्रेरी के सबसे नए वर्शन उपलब्ध हैं:
- AndroidX लाइब्रेरी
- आर्किटेक्चर कॉम्पोनेंट लाइब्रेरी
- Constraint Layout लाइब्रेरी
- AndroidX Test
- Databinding लाइब्रेरी
- Android Instant App लाइब्रेरी
- Wear OS
- Google Play services
- Google Play Billing लाइब्रेरी
- Firebase
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/". } }
शानदार
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 रिपॉज़िटरी में उपलब्ध नहीं है. ऐसे में, आपको लाइब्रेरी को ऑफ़लाइन रिपॉज़िटरी से लेना होगा.
प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस का ऐक्सेस
Google के Maven आर्टफ़ैक्ट को प्रोग्राम के हिसाब से, अपने-आप होने वाली प्रोसेस के ज़रिए ऐक्सेस करने के लिए, maven.google.com/master-index.xml से आर्टफ़ैक्ट ग्रुप की 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.
एसडीके मैनेजर से ऑफ़लाइन रिपॉज़िटरी
इसके बाद, इन लाइब्रेरी को अपने dependencies ब्लॉक में हमेशा की तरह जोड़ा जा सकता है.
ऑफ़लाइन लाइब्रेरी,
android_sdk/extras/ में सेव की जाती हैं.