2013-10-31 8 views
7

मैंने हाल ही में एक्लिप्स से एंड्रॉइड स्टूडियो में स्विच करने का निर्णय लिया है। मैंने एक प्रोजेक्ट आयात किया जिस पर मैं काम कर रहा था और अब जब मैं प्रोजेक्ट चलाने की कोशिश करता हूं तो यह त्रुटि मिल रही है।एंड्रॉइड स्टूडियो कार्य पर वृद्धिशील टास्क.taskAction() को कॉल नहीं कर सका ': प्रोजेक्ट: डेक्सडेबग'

Gradle: Execution failed for task ':project:dexDebug'. 
> Could not call IncrementalTask.taskAction() on task ':project:dexDebug' 

मैं इस साइट को 2 दिनों के लिए क्रूज़ कर रहा हूं और इसका कोई फायदा नहीं हुआ है। मैं gradlew compileDebug --stacktrace चला और इस मैं क्या मिल गया है:

C:\Users\adam\AndroidStudioProjects\projectProject>gradlew compileDebug --stacktrace 
Relying on packaging to define the extension of the main artifact has been deprecated and is scheduled to be removed in Gradle 2.0 
:project:preBuild UP-TO-DATE                   
:project:preDebugBuild UP-TO-DATE 
:project:preReleaseBuild UP-TO-DATE 
:project:prepareComAndroidSupportAppcompatV71800Library UP-TO-DATE 
:project:prepareComGoogleAndroidGmsPlayServices3225Library UP-TO-DATE 
:project:prepareDebugDependencies    
:project:compileDebugAidl UP-TO-DATE 
:project:compileDebugRenderscript UP-TO-DATE 
:project:generateDebugBuildConfig UP-TO-DATE 
:project:mergeDebugAssets UP-TO-DATE 
:project:mergeDebugResources UP-TO-DATE 
:project:processDebugManifest UP-TO-DATE 
:project:processDebugResources UP-TO-DATE 
:project:generateDebugSources UP-TO-DATE 
:project:compileDebug UP-TO-DATE 

BUILD SUCCESSFUL 

Total time: 10.459 secs 

हालांकि मैं अभी भी उस त्रुटि हो रही है जब मैं वास्तव में इस परियोजना को चलाने के लिए प्रयास करें।

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

repositories { 
    mavenCentral() 
} 

android { 
    compileSdkVersion 18 
    buildToolsVersion "18.1.1" 

    defaultConfig { 
     minSdkVersion 8 
     targetSdkVersion 18 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs') 
    compile 'com.google.android.gms:play-services:3.2.25' 
    compile 'com.android.support:support-v4:18.0.0' 
    compile 'com.android.support:appcompat-v7:+' 
} 

और मेरे settings.gradle: यहाँ मेरी build.gradle है (मैं एक गूगल मैप्स/स्थानों ऐप की सभी जार के साथ अपने प्रोजेक्ट में एक 'libs' फ़ोल्डर की क्या ज़रूरत है)

include ':project', ':project:libs:android-support-v4', ':project:libs:google-api-client-1.10.3-beta', 
     ':project:libs:google-api-client-android2-1.10.3-beta', ':project:libs:google-http-client-1.10.3-beta', 
     ':project:libs:google-http-client-android2-1.10.3-beta', ':project:libs:google-oauth-client-1.10.1-beta', 
     ':project:libs:gson-2.1', ':project:libs:guava-11.0.1', ':project:libs:jackson-core-asl-1.9.4', 
     ':project:libs:jsr305-1.3.9', ':project:libs:protobuf-java-2.2.0', ':project:libs:GoogleAdMobAdsSdk-6.4.1' 

जैसा कि मैंने कहा, मैंने इस त्रुटि के बारे में यहां जो कुछ भी पढ़ा है, मैंने बहुत कुछ करने की कोशिश की है और मुझे कोई भाग्य नहीं है। किसी भी तरह की सहायता का स्वागत किया जाएगा।

उत्तर

7

यदि आपकी समस्या मेरे जैसा ही है, तो समस्या लाइब्रेरी निर्भरताओं के बीच एक संघर्ष है।

मेरे मामले में, अपराधी libs निर्देशिका के अंदर एक तृतीय पक्ष लाइब्रेरी जार था, जिसमें android-support-v4 लाइब्रेरी शामिल थी। यह मेरी समर्थन लाइब्रेरी पर प्रोजेक्ट की निर्भरता के साथ विवादित है (यानी compile 'com.android.support:support-v4:18.0.0' लाइन build.gradle में)।

एक बार जब मैंने तृतीय पक्ष लाइब्रेरी के संस्करण में अद्यतन किया, जिसे समर्थन पुस्तकालय की आवश्यकता/शामिल नहीं किया गया था, तो समस्या हल हो गई थी।

कारण आपको कोई समस्या नहीं दिख रहा है जब compileDebug कार्य जारी है कि समस्या ही dexDebug चरण के दौरान प्रकट होता है (जब Gradle सभी परियोजनाओं और पुस्तकालयों, C/C++ परियोजनाओं में थोड़े जोड़ने चरण से बाईटकोड विलीन हो जाती है) है ।

साथ ./gradlew [clean] assembleDebug

+1

आप 'ग्रेडल निर्भरता' चलाकर निर्भरताओं की भी जांच कर सकते हैं। यह आवश्यक संस्करण दिखाता है और संघर्ष होने पर उन्हें कैसे हल किया गया था। – mindeh

+0

रैखिक निर्भरता कहां चलाना है .... मुझे यह नहीं मिला :( –

+0

मेरे मामले में यह संकलन फाइलों ('libs/GoogleAdMobAdsSdk-6.4.1.jar') और 'com.google.android संकलित करें) के बीच एक संघर्ष था .gms: play-services: 4.0.30 ' – unify

1

सोचा बजाय प्रयास करें मैं जल्दी से इस पर मेरे अनुभव साझा करना चाहिए के रूप में सिर्फ एक ही मुद्दा था, लेकिन अब संकल्प लिया। तो अगर यह किसी और की मदद करता है।

मैं भी एंड्रॉयड स्टूडियो का उपयोग कर रहा है और लेआउट के साथ चारों ओर खेल रहा था और मेरे कोड का उपयोग कर उन्हें लोड, इसलिए नहीं मानक "लेआउट/लेआउट भूमि" प्रकार फ़ोल्डरों होने ..

वैसे भी, मैं किसी भी कोड को सही और त्रुटि को हल करने के लिए कोई भाग्य के साथ चरण में अपने परिवर्तन चरण वापस लुढ़का .. फिर मैंने फ़ोल्डर नाम के बारे में एक चेतावनी देखी जो स्वीकार नहीं किया जा रहा था .. कुछ लेआउट-वैकल्पिक 1234 "

वैसे भी, फ़ोल्डर का नाम बदल गया और कोई परिवर्तन नहीं होता है। पुन: प्रारंभ आईडीई और एक ही सौदा ... चेतावनी फिर से जांच की गई देखा कि यह डिबग फ़ोल्डर में स्थित था ..

परियोजना पुनर्निर्माण इस मामले में मेरे लिए जल्दी से समस्या का समाधान हो, आम तौर पर मैं सबसे संरचना में परिवर्तन के दौरान पुनर्निर्माण होगा। .. लेकिन इस बार भूल जाना चाहिए था।

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