2013-09-23 6 views
12

नोट: मैं लिंक पोस्ट नहीं कर सकता, इसलिए मुझे लगता है कि आपको संदर्भों का पालन करने के लिए here पर जाना होगा। क्षमा करें, मेरा नियम नहीं।"न तो पथ और न ही बेसडिर शून्य या खाली स्ट्रिंग हो सकता है।" एंड्रॉइड स्टूडियो में ग्रेडल प्रोजेक्ट आयात करते समय त्रुटि 0.2.9

मैं जब एंड्रॉयड स्टूडियो 0.2.9 में एक परियोजना आयात करने का प्रयास निम्न त्रुटि हो रही है:

Could not execute build using Gradle distribution 
'http://services.gradle.org/distributions-snapshots/ 
gradle-1.8-20130830160653+0000-bin.zip'. 
A problem occurred configuring project ':library'. 
A problem occurred configuring project ':library'. 
Failed to notify project evaluation listener. 
Neither path nor baseDir may be null or empty 
string. path='' basedir='<projects folder>/ 
drag-sort-listview/library' 

Consult IDE log for more details (Help | Show Log) 

परियोजना मूलतः था एक Maven परियोजना (1)। मैंने इसे ग्रहण एडीटी में खोला, (0) पर निर्देशों के अनुसार /librabry/build.gradle फ़ाइल उत्पन्न की।

ग्रहण एडीटी build.gradle देखा उत्पन्न की तरह:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android-library' 

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

android { 
    compileSdkVersion 7 
    buildToolsVersion "17.0.0" 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = [''] 
      resources.srcDirs = [''] 
      aidl.srcDirs = [''] 
      renderscript.srcDirs = [''] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

मैं एंड्रॉयड स्टूडियो संस्करणों कह रोकने के लिए प्राप्त करने के लिए

classpath 'com.android.tools.build:gradle:0.5+' 

को

classpath 'com.android.tools.build:gradle:0.4' 

से लाइन 6 बदलना पड़ा मिस-मिलान थे।

# This file is automatically generated by Android Studio. 
# Do not modify this file -- YOUR CHANGES WILL BE ERASED! 
# 
# This file must *NOT* be checked into Version Control Systems, 
# as it contains information specific to your local configuration. 

# Location of the SDK. This is only used by Gradle. 
# For customization when using a Version Control System, please read the 
# header note. 
sdk.dir=/Applications/Android Studio.app/sdk 

मैं तो 'फ़ाइल में चयन करके /settings.gradle फ़ाइल आयात करने का प्रयास मैं भी

include ':library' 
सामग्री के साथ

और एक /local.properties फ़ाइल युक्त एक /settings.gradle फ़ाइल जोड़ी गई | आयात परियोजना ... 'संवाद। मेरे पास 'ऑटो-आयात का उपयोग करें' और संवाद में चयनित 'सत्यापन के साथ ग्रेडल रैपर का उपयोग करें' विकल्प है (3)। पूर्ण idea.log प्रविष्टि को देखा जा सकता है (4)।

किसी भी मदद की सराहना की जाएगी, धन्यवाद।

उत्तर

2

(।। एक सवाल संपादन में ओपी द्वारा उत्तर दिया एक समुदाय विकी जवाब देने के लिए परिवर्तित Question with no answers, but issue solved in the comments (or extended in chat) देखें)

ओपी ने लिखा है:

ठीक है, इसे हल। यह समस्या android.sourceSets के तहत build.gradle में खाली सूचियों के साथ है, मैंने त्रुटि को हल करने के लिए उन्हें टिप्पणी की। यहाँ मेरे वर्तमान build.gradle है:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android-library' 

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

android { 
    compileSdkVersion 7 
    buildToolsVersion "17.0.0" 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      // java.srcDirs = [''] 
      // resources.srcDirs = [''] 
      // aidl.srcDirs = [''] 
      // renderscript.srcDirs = [''] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

आशा व्यक्त की कि तुम सब लोग मदद करता है।

12

यह अगर आप ऐसा तरह Environment Variables उपयोग कर रहे हैं क्या होगा:

android { 
signingConfigs { 
    release { 
     storeFile file(RELEASE_STORE_FILE) 
     storePassword RELEASE_STORE_PASSWORD 
     keyAlias RELEASE_KEY_ALIAS 
     keyPassword RELEASE_KEY_PASSWORD 
    } 
} 

और आप अपने gradle.properties अपनी परियोजना के रूट पर स्थित फाइल में उन वैरिएबल निर्धारित नहीं किया है।

इसे ठीक करने के लिए, सुनिश्चित करें कि आपके चर परिभाषित किए गए हैं, यहां मेरे क्रम से एक उदाहरण है।गुण फ़ाइल:

RELEASE_STORE_FILE=app_keystore.jks 
RELEASE_STORE_PASSWORD=password 
RELEASE_KEY_ALIAS=MyAppKey 
RELEASE_KEY_PASSWORD=password 
3

त्रुटि आपके कीस्टोर के पथ का जिक्र हो सकती है। यदि कीस्टोर का पथ काम नहीं करता है, तो ऐसा लगता है कि यह शून्य है। यदि आप बस अपने कीस्टोर के फ़ाइल नाम (पूर्ण पथ की बजाय) का उपयोग करना चाहते हैं, तो सुनिश्चित करें कि कीस्टोर आपकी प्रोजेक्ट की मूल निर्देशिका में है।

android { 
signingConfigs { 
    release { 
     storeFile file(**DoubleCheckPath**) 
     storePassword RELEASE_STORE_PASSWORD 
     keyAlias RELEASE_KEY_ALIAS 
     keyPassword RELEASE_KEY_PASSWORD 
    } 
} 
0

आप परियोजना में एक फ़ाइल, "gradle.properties" फ़ाइल के लिए वंचित हो सकते हैं, क्योंकि इस फ़ाइल को शामिल कुछ, भिन्न होता है उदाहरण के लिए, हमारे कस्टम चर, इस तरह के key.storefile key.keypassword, तो आप इस जाँच करनी चाहिए फ़ाइल मौजूद है या नहीं।

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