त्रुटि: एंड्रॉइड स्टूडियो में 'डिफ़ॉल्ट' नाम के साथ कॉन्फ़िगरेशन नहीं मिला


117

मैं एंड्रॉइड में नेटवर्क ऑपरेशन करने के लिए वॉली लाइब्रेरी का उपयोग कर रहा हूं। इसलिए मैं अपने प्रोजेक्ट में इस लाइब्रेरी को जोड़ने की कोशिश कर रहा हूं जो Android Studio और gradle सिस्टम में बनाई गई है।

मैंने अपने प्रोजेक्ट में वॉली लाइब्रेरी को जोड़ा लेकिन जब मैं ग्रेडेल के साथ सिंक करता हूं तो मुझे त्रुटि संदेश मिल रहा है। मैंने उन सभी उत्तरों की कोशिश की, जो मैं यहां देख रहा हूं लेकिन मेरे लिए कुछ भी काम नहीं किया।

त्रुटि संदेश : एंड्रॉइड स्टूडियो में 'डिफ़ॉल्ट' नाम का कॉन्फ़िगरेशन नहीं मिला

वॉली / build.gradle

apply plugin: 'android-library'

android {

    compileSdkVersion 19
    buildToolsVersion '19.0.1'

    sourceSets {
        defaultConfig {
            minSdkVersion 8
            targetSdkVersion 19
        }

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

        }
    }
}

एप्लिकेशन / build.gradle

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.1'

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

dependencies {
    compile 'com.android.support:appcompat-v7:19.+'
    compile project(':library:volley')
}

जड़ / build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

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

allprojects {
    repositories {
        mavenCentral()
    }
}

settings.gradle

include ':app'
include ':library:volley'

क्या आपने प्रोजेक्टनेम / लाइब्रेरी की तरह सही स्थान पर लाइब्रेरी फ़ोल्डर जोड़ा है ??
अजय एस

मैंने ऐप डायरेक्टरी में लाइब्रेरी डायरेक्टरी को जोड़ा
बॉट



1
मेरे मामले में मेरी ग्रेडल कॉन्फ़िगरेशन फ़ाइल में से एक गायब है। यह ठीक से धक्का नहीं है।
ज़ार ई अहमर

जवाबों:


68

अपने प्रोजेक्ट के रूट लोकेशन में अपना लाइब्रेरी फोल्डर जोड़ें और वहां सभी लाइब्रेरी फाइल्स को कॉपी करें। पूर्व YourProject / पुस्तकालय के लिए फिर इसे सिंक करें और बाकी चीजें मुझे ठीक लगती हैं।


5
इसका यह भी मतलब हो सकता है कि build.gradle फ़ाइल या .iml फाइलें लाइब्रेरी निर्देशिकाओं के अंदर गायब हैं
WKS

7
@aleb पूरी त्रुटि संदेश प्राप्त करने के लिए आपको बस टर्मिनल कमांड चलाने की जरूरत है ./gradlew assembleDebug:। आप इसे Android Studioया बाहरी टर्मिनल ऐप से कर सकते हैं ।
ग्यारह

क्या आप उदाहरण और तस्वीरें पोस्ट कर सकते हैं? धन्यवाद, क्योंकि इस प्रक्रिया में नहीं काम
delive

धन्यवाद पाल जिसने मेरा दिन बचाया। धन्यवाद <3
गुफरान खुर्शीद

1
इससे मुझे एहसास होता है कि मैं अपने सबमॉड्यूल्स को याद कर रहा था, जो कि @ ViliusK के उत्तर से अधिक स्पष्ट रूप से विस्तारित है।
आयनोकॉस्ट ब्रिघम

96

प्रयत्न:

git submodule init
git submodule update

1
यह निश्चित रूप से पुस्तकालयों के लिए काम करता है जिन्हें सबमॉड्यूल के रूप में जोड़ा जाता है, धन्यवाद!
Arne

@Vilius, टर्मिनल में मैं इसे किस निर्देशिका से चलाता हूं? मैंने इसे अपनी परियोजना निर्देशिका में चलाने की कोशिश की, लेकिन यह कहता है Not a git repository (or any of the parent directories)। मेरे पास एक नमूना ऐप है जिसे मैंने आयात करने की कोशिश की थी, और यह ग्रेडल के लिए सेट नहीं किया गया था, इसलिए उन्होंने इसे लपेट दिया। मुझे आश्चर्य है कि अगर यह समस्या का हिस्सा है। वास्तव में, मेरे पास settings.gradleफाइल भी नहीं है । केवल build.gradleऔर कुछ अन्य।
Azurespot

2
आपको प्रोजेक्ट के रूट डायर से चलना चाहिए। यह गिट रेपो से एक परियोजना होनी चाहिए। और यह सबप्रोजेक्ट के साथ एक प्रोजेक्ट होना चाहिए। में देखो build.gradleकी तरह कुछ के लिए फ़ाइलcompile project(':libs:my-custom:library')
ViliusK

1
> एक सबमॉड्यूल आपको अपने रिपॉजिटरी के एक उपनिर्देशिका में एक और गिट रिपॉजिटरी रखने की अनुमति देता है। अन्य रिपॉजिटरी का अपना इतिहास है, जो वर्तमान रिपॉजिटरी के इतिहास में हस्तक्षेप नहीं करता है। इसका उपयोग बाहरी निर्भरता जैसे कि तीसरे पक्ष के पुस्तकालयों के लिए किया जा सकता है। स्रोत
ViliusK

3
Git सबमॉड्यूल को ग्रेडल बिल्ड एरर से क्या लेना-देना है?
टेडी

22

यह शायद एक दुर्लभ मामला है, लेकिन मेरे लिए एक पुस्तकालय जो सेटिंग्स में शामिल था। ग्रेड वहाँ नहीं था।

जैसे मेरे पास: include ':libraries:Android-RateThisApp:library'मेरी सेटिंग में ।ग्रेड

लेकिन फ़ोल्डर Android-RateThisApp खाली था। जैसे ही मैंने इस सबमॉड्यूल की जाँच की, सिंक सिंक सफल हो गया।


हाँ, आप शायद करने के लिए मिला है git submodule initऔर git submodule update। सबमॉडल्स के साथ किसी प्रोजेक्ट की जाँच करते समय यह सामान्य मामला है।
विल्लुस्क

दुर्लभ नहीं है .... इस समय इस तरह की त्रुटि के साथ मेरे लिए यह मामला है ... समय का एक बहुत।
सरवॉन

यह मेरे लिए मामला था! अद्यतन की गई प्रतिक्रिया-मूल-नक्शे और इसने एंड्रॉइड डायरेक्टरी के मार्ग को बदल दिया
cbartondock

14

यदि आप कई परियोजनाओं के लिए एक ही पुस्तकालय फ़ोल्डर का उपयोग करना चाहते हैं, तो आप इसे इस तरह से किसी बाहरी स्थान पर वर्गीकृत कर सकते हैं:

settings.gradle:

include 'app', ':volley'
project(':volley').projectDir = new File('../libraries/volley')

अपने ऐप में build.gradle

dependencies {
    ...
    compile project(':volley')
...}

यह मेरे लिए तब काम आया जब मेरे पास एक सबमॉडल के रूप में एक पूरी परियोजना थी लेकिन मैं केवल उस परियोजना के पुस्तकालय मॉड्यूल का उपयोग करना चाहता था (और नमूना एप्लिकेशन को बाहर करता हूं)।
phreakhead

6

मैं भी इस समस्या का सामना कर रहा हूं, लेकिन मैं निम्नलिखित चरणों का पालन करता हूं: - 1) मैं एक विशेष फ़ोल्डर के नाम पर मॉड्यूल (लाइब्रेरी) को जोड़ता हूं थर्डपार्टीएलिब

इस समस्या को हल करने के लिए, मैं सेटिंग्स जाता हूं। केवल follwing जोड़ने की तुलना में:

परियोजना (':')। प्रोजेक्टडायर = नई फ़ाइल ('थर्डपार्टीलिब /')

: - मॉड्यूल नाम है ...


3

इस त्रुटि का निदान करने के लिए जल्दी से एक टर्मिनल पर जाएं या एंड्रॉइड स्टूडियो में निर्मित टर्मिनल का उपयोग करें (नीचे स्थिति बार में पहुंच योग्य)। अपने प्रॉजेक्ट (जहां settings.gradleस्थित है) के लिए मुख्य निर्देशिका में बदलें ।

1.) यह सुनिश्चित करने के लिए जांचें कि आपके settings.gradleउपप्रोजेक्ट शामिल हैं। कुछ इस तरह। यह सुनिश्चित करता है कि आपका मल्टी-प्रोजेक्ट बिल्ड आपके लाइब्रेरी सब-प्रोजेक्ट के बारे में जानता है।

include ':apps:App1', ':apps:App2', ':library:Lib1'

जहां कॉलनों के बीच का पाठ उप-निर्देशिका है।

2.) निम्नलिखित ग्रेड कमांड को देखें कि क्या ग्रैडल आपको लाइब्रेरी के लिए कार्यों की सूची दे सकता है। settings.gradleपरिभाषा में उसी क्वालीफायर का उपयोग करें । यह पुस्तकालय के निर्माण के साथ मुद्दों को उजागर करेगा स्क्रिप्ट अलगाव में।

./gradlew :library:Lib1:tasks --info

3.) सुनिश्चित करें कि अंतिम चरण से आउटपुट "असेंबल्डफॉल्ट" कार्य को सूचीबद्ध करता है। यदि यह सुनिश्चित नहीं हुआ कि लाइब्रेरी में एंड्रॉइड लाइब्रेरी प्लगइन शामिल है build.gradle। इस शीर्ष पर की तरह।

apply plugin: 'com.android.library'

मुझे पता है कि मूल पोस्टर के प्रश्न का उत्तर दिया गया था, लेकिन मेरा मानना ​​है कि उत्तर पिछले एक साल में विकसित हुआ है और मुझे लगता है कि त्रुटि के कई कारण हैं। मुझे लगता है कि इस संकल्प प्रवाह को विभिन्न मुद्दों पर चलने वालों की सहायता करनी चाहिए।


3

settings.gradleफ़ाइल की जाँच करें । जो मॉड्यूल शामिल हैं वे गायब हो सकते हैं या किसी अन्य निर्देशिका में हो सकते हैं। उदाहरण के लिए, नीचे दी गई लाइन के साथ settings.gradle, common-libअपने प्रोजेक्ट डायरेक्टरी के अंदर ग्रेडेल सर्च मॉड्यूल:

include ':common-lib'

यदि यह गायब है, तो आप इस मॉड्यूल को अपनी परियोजना में ढूंढ सकते हैं और इसकी प्रतिलिपि बना सकते हैं या settings.gradleफ़ाइल में इसके पथ का संदर्भ ले सकते हैं :

include ':common-lib'
project(':common-lib').projectDir = new File('<path to your module i.e. C://Libraries/common-lib>') // 

0

मेरे लिए, (कुछ टिप्पणियों के अनुसार मैंने देखा है), मुद्दा यह था कि ग्रेडेल आयातित पुस्तकालय के लिए build.gradle नहीं मिल सका। यह कॉन्फ़िगरेशन स्ट्रेट-फॉरवर्ड है लेकिन एरर मैसेज थोड़ा गुप्त है। उदाहरण के लिए, मैं android-map-utils प्रोजेक्ट का उपयोग कर रहा था और इसे अपनी सेटिंग्स में शामिल करना था। इन 2 लाइनों को इस तरह जोड़कर।

include ':android-map-utils'
project(':android-map-utils').projectDir = new File(settingsDir, '..\\..\\modules\\android-maps-utils-master\\library')

लाइब्रेरी का पथ मेरे प्रोजेक्ट की सेटिंग। Regle फ़ाइल के सापेक्ष है। फिर, मैंने इसे अपने ऐप की बिल्ड.gradle फ़ाइल की अपनी निर्भरता में इसे इस तरह संदर्भित किया

...

    dependencies {
    ....
        compile project(':android-map-utils')
    ....

    }

मैं एक समय में एक मॉड्यूल को आयात करने, उसे संकलित करने और जांचने की सलाह देता हूं।


0

यदि आपको लगता है कि कुछ नोड मॉड्यूल को हटाने के बाद आपको यह त्रुटि दिखाई दी है, तो आदर्श रूप से build.gradle (मॉड्यूल: ऐप) के तहत पुस्तकालय प्रस्तुत नहीं किया जाना चाहिए। इसे मैन्युअल रूप से हटाया जा सकता है और परियोजना को फिर से सिंक कर सकता है।


0

मुझे भी इसी समस्या का सामना करना पड़ा और समस्या यह थी कि कुछ निम्न फाइलों में पुस्तकालय गायब थे।

settings.gradle, ऐप / build.gradle, package.json, MainApplication.java

मान लीजिए कि लाइब्रेरी प्रतिक्रिया-मूल-वेक्टर-आइकन है, तो इसे निम्नलिखित फ़ाइलों में वर्णित किया जाना चाहिए;

निर्भरता अनुभाग के तहत एप्लिकेशन / build.gradle फ़ाइल में जोड़ें:

संकलन परियोजना (': प्रतिक्रिया-देशी-वेक्टर-आइकन')

Android फ़ोल्डर के अंतर्गत settings.gradle फ़ाइल में, निम्न जोड़ें:

शामिल करें: 'प्रतिक्रिया-मूल-वेक्टर-आइकन' परियोजना (': प्रतिक्रिया-मूल-वेक्टर-आइकन')। ProjectDir = नई फ़ाइल (rootProject.projectDir, '../node_modules/react-native-vector-icons/android') )

MainApplication.java में, निम्नलिखित जोड़ें:

निर्भरता को आयात करें: com.oblador.vectoricons.VectorIconsPackage आयात करें;

और फिर add: new वेक्टरIconsPackage () getPackages () विधि में।


0

कुछ प्रतिक्रिया-देशी निर्भरताओं को हटाने से समस्या हल हो गई

इन लाइनों को हटाने से समस्या का समाधान हो जाता है। यह लाइन rnpm लिंक द्वारा बनाई गई है लेकिन एक बग है।

compile project(':react-native-gps')
compile project(':react-native-maps')
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.