2013-07-27 18 views
38

में प्रोजेक्ट को क्रमबद्ध करने के लिए कॉमन्स-आईओ निर्भरता जोड़ें। बहुत आसान सवाल - कॉमन्स-io एंड्रॉइड प्रोजेक्ट को बढ़ाने के लिए निर्भरता कैसे जोड़ें?एंड्रॉइड स्टूडियो

मैं निम्नलिखित

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 

apply plugin: 'android' 

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile group: 'commons-io', name: 'commons-io', version: '2.0.1' 
} 

की कोशिश की, लेकिन यह काम नहीं करता है त्रुटि

है Gradle: एक समस्या परियोजना को विन्यस्त हुआ ': LearnIt'।

परियोजना मूल्यांकन श्रोता को सूचित करने में विफल। कॉन्फ़िगरेशन के लिए सभी निर्भरताओं को हल नहीं कर सका ': LearnIt: _DebugCompile'। > कॉमन्स-आईओओ नहीं मिला: commons-io: 2.0.1। learnit: LearnIt: द्वारा आवश्यक अनिर्दिष्ट

+0

मामले किसी में की जरूरत है सभी Apache Commons libs - http://mvnrepository.com/artifact/org.apache.commons – Jaydev

उत्तर

40

आप भंडार की घोषणा करने की जरूरत है, जहां आप (जैसे MavenCentral) से आम-कब पुस्तकालय को हल करना चाहते हैं:

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 

apply plugin: 'android' 

repositories{ 
    mavenCentral() 
} 

dependencies { 
    compile files('libs/android-support-v4.jar') 

    compile group: 'commons-io', name: 'commons-io', version: '2.0.1' 
}  
+1

मैं मुझे लगता है कि मेरे कोड में पहले से ही mavenCentral है! –

+0

बिल्डस्क्रिप्ट देखें { भंडार { mavenCentral() } –

+3

आपने इसे 'buildScript' के अंदर कॉन्फ़िगर किया है, लेकिन बिल्ड फ़ाइल के अंदर ही नहीं। 'बिल्डस्क्रिप्ट' का उपयोग कस्टम कार्यों द्वारा आवश्यक अतिरिक्त निर्भरताओं को घोषित करने के लिए किया जाता है, न कि परियोजना द्वारा निर्मित निर्भरताओं पर निर्भर करता है। यह भी ध्यान रखें कि रेन एक उग्र कमिश्नर है। वह जानता है कि वह किस बारे में बात कर रहा है। देखें http://www.gradle.org/docs/current/userguide/organizing_build_logic.html#sec:external_dependencies –

56

अब तक (मई 2014) यदि आप डिफॉल्ट जेनरेटेड प्रोजेक्ट का उपयोग करते हैं तो यह वास्तव में आश्चर्यजनक सरल है (हालांकि निर्देशों को ढूंढना मुश्किल है!

द्वितीय स्तर build.gradle खोलें, और f जोड़ें dependencies { को ollowing लाइन:

compile "commons-io:commons-io:+" 

कि commons-io के नवीनतम संस्करण को मिल जाएगा। मेरा पूरा फ़ाइल इस तरह दिखता है:

apply plugin: 'android' 

android { 
    compileSdkVersion 19 
    buildToolsVersion "19.0.0" 

    defaultConfig { 
     minSdkVersion 18 
     targetSdkVersion 19 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile "commons-io:commons-io:+" 
} 
+0

यह बहुत अच्छा काम करता है - परियोजना के हिस्से के रूप में IOUtils के लिए बहुत उपयोगी है। – MikeV

+1

इसके लिए धन्यवाद लेकिन निर्भरता में + ऑपरेटर का उपयोग न करें। यह संस्करण अंतर के लिए बुरा है। – okarakose

+0

इसमें पेशेवर और विपक्ष है। – Timmmm

23

उपयोग gradlePlease निर्भरता प्राप्त करने के लिए।

अपने अनुप्रयोग/build.gradle फ़ाइल में निम्न जोड़ें:

dependencies { 
    compile 'org.apache.commons:commons-io:1.3.2' 
} 
+0

एक जार डाउनलोड के लिए बहुत उपयोगी http://gradleplease.appspot.com/ –

+0

-> https://commons.apache.org/proper/commons-io/download_io.cgi – CrandellWS

संबंधित मुद्दे