खोज…


एक स्थानीय JAR फ़ाइल निर्भरता जोड़ें

एकल जार

कभी-कभी आपके पास एक स्थानीय JAR फाइल होती है जिसे आपको अपने ग्रेडेल बिल्ड पर निर्भरता के रूप में जोड़ना पड़ता है। यहां बताया गया है कि आप यह कैसे कर सकते हैं:

dependencies {
    compile files('path/local_dependency.jar')
}

जहां path आपके फ़ाइल सिस्टम पर एक निर्देशिका पथ है और local_dependency.jar आपकी स्थानीय JAR फ़ाइल का नाम है। path बिल्ड फ़ाइल के सापेक्ष हो सकता है।

जार की निर्देशिका

संकलन करने के लिए जार की निर्देशिका जोड़ना भी संभव है। इसे इस तरह किया जा सकता है:

dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
}

जहां libs जार और *.jar युक्त डायरेक्टरी होगी, जिसमें फाइल को शामिल करने के लिए फिल्टर होगा।

भंडार के रूप में जार की निर्देशिका

यदि आप केवल एक रिपॉजिटरी में जार देखना चाहते हैं, तो उन्हें सीधे उनके पथ के साथ निर्भरता के रूप में जोड़ने के बजाय आप एक फ्लैटडायर रिपॉजिटरी का उपयोग कर सकते हैं।

repositories {
    flatDir {
        dirs 'libs'
    }
}

libs डायरेक्टरी और उसके चाइल्ड डाइरेक्टरीज़ में जार की तलाश है।

एक निर्भरता जोड़ें

ग्रैडल में निर्भरता मावेन के समान प्रारूप का पालन करती है। निर्भरताएँ इस प्रकार संरचित हैं:

group:name:version

यहाँ एक उदाहरण है:

'org.springframework:spring-core:4.3.1.RELEASE'

संकलन-समय निर्भरता के रूप में जोड़ने के लिए, बस ग्रेडल बिल्ड फ़ाइल में अपने dependency ब्लॉक में इस लाइन को जोड़ें:

compile 'org.springframework:spring-core:4.3.1.RELEASE'

इस के लिए एक वैकल्पिक वाक्यविन्यास निर्भरता के प्रत्येक घटक को स्पष्ट रूप से नाम देता है, जैसे:

compile group: 'org.springframework', name: 'spring-core', version: '4.3.1.RELEASE'

यह संकलन समय पर निर्भरता जोड़ता है।

आप केवल परीक्षणों के लिए निर्भरता भी जोड़ सकते हैं। यहाँ एक उदाहरण है:

testCompile group: 'junit', name: 'junit', version: '4.+'

एक और ग्रेडल प्रोजेक्ट पर निर्भर करता है

मल्टी-प्रोजेक्ट ग्रेडल बिल्ड के मामले में, आपको कभी-कभी अपने बिल्ड में किसी अन्य प्रोजेक्ट पर निर्भर रहने की आवश्यकता हो सकती है। इसे पूरा करने के लिए, आप अपनी परियोजना की निर्भरता में निम्नलिखित दर्ज करेंगे:

dependencies {
    compile project(':OtherProject')
}

जहाँ ':OtherProject' परियोजना के लिए निर्देशिका पथ की जड़ से संदर्भित मार्ग है।

':OtherProject' फ़ाइल के संदर्भ में ':OtherProject' उपलब्ध करने के लिए इसे संबंधित settings.gradle जोड़ें build.gradle

include ':Dependency'
project(':Dependency').projectDir = new File('/path/to/dependency')

अधिक विस्तृत विवरण के लिए, आप ग्रैडल के आधिकारिक दस्तावेज का संदर्भ यहां दे सकते हैं

सूची निर्भरता

dependencies कार्य को कॉल करने से आप रूट प्रोजेक्ट की निर्भरता देख सकते हैं:

gradle dependencies

परिणाम निर्भरता रेखांकन (खाते में परिवर्तनशील निर्भरता लेने), विन्यास द्वारा टूट गया है। प्रदर्शित कॉन्फ़िगरेशन को प्रतिबंधित करने के लिए, आप --configuration विकल्प का विश्लेषण करने के लिए एक चुने हुए कॉन्फ़िगरेशन द्वारा पारित कर सकते हैं:

gradle dependencies --configuration compile

किसी उपप्रोजेक्ट की निर्भरता प्रदर्शित करने के लिए, <subproject>:dependencies कार्य का उपयोग करें। उदाहरण के लिए api नाम के एक उपप्रोजेक्ट की निर्भरता सूची के लिए:

gradle api:dependencies

रिपोजिटरी जोड़ना

आपको ग्रेड को अपने प्लगइन्स के स्थान पर इंगित करना होगा ताकि ग्रेडल उन्हें ढूंढ सके। अपने build.gradle repositories { ... } जोड़कर ऐसा करें।

यहां तीन रिपॉजिटरी, जेकार्ट , मावेन रिपोजिटरी और एक कस्टम रिपॉजिटरी को जोड़ने का एक उदाहरण है जो मावेन शैली में निर्भरता प्रदान करता है।

repositories {
  // Adding these two repositories via method calls is made possible by Gradle's Java plugin
  jcenter()
  mavenCentral()

  maven { url "http://repository.of/dependency" }
}

एंड्रॉइड प्रॉजेक्ट का उपयोग करके .aar फ़ाइल को एंड्रॉइड प्रोजेक्ट में जोड़ें

  1. प्रोजेक्ट के app मॉड्यूल पर नेविगेट करें और libs निर्देशिका बनाएं।
  2. अपनी .aar फ़ाइल को वहाँ रखें। उदाहरण के लिए myLib.aar
  3. app स्तर की build.gradle फ़ाइल के android ब्लॉक के नीचे कोड जोड़ें।
  repositories {
        flatDir {
            dirs 'libs'
        }
    }

इस तरह आपने एक नया अतिरिक्त रिपॉजिटरी परिभाषित किया जो app मॉड्यूल के libs फ़ोल्डर को इंगित करता है।

  1. dependencies ब्लॉक या build.gradle फ़ाइल के नीचे कोड जोड़ें:
compile(name:'myLib', ext:'aar')


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow