2014-09-26 7 views
13

के बाद डुप्लिकेट ज़िप प्रविष्टि मैं ग्रैडल एंड्रॉइड प्लगइन v0.12 का उपयोग कर रहा हूं लेकिन मैंने नए संस्करण में अपग्रेड करने का निर्णय लिया, क्योंकि मुझे नई कार्यक्षमता की आवश्यकता है (और बेहतर गति हमेशा एक प्लस है) ।ग्रैडल प्लगइन v0.13.1

नए v0.13.1 को अपडेट करने के बाद, मुझे "डुप्लिकेट ज़िप प्रविष्टि" (प्रोगुआर्ड से) प्राप्त करना जारी रहता है जबकि सब कुछ पहले काम करता था। पूर्ण त्रुटि:

java.io.IOException: Can't write [/Users/.../classes-proguard/netherlands/release/classes.jar] (Can't read [/Users/.../.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-io/1.3.2/b6dde38349ba9bb5e6ea6320531eae969985dae5/commons-io-1.3.2.jar(;;;;;;!META-INF/MANIFEST.MF)] (Duplicate zip entry [commons-io-1.3.2.jar:org/apache/commons/io/CopyUtils.class])) (CopyUtils was FileUtils before).

मैं निम्नलिखित पैकेजिंग विकल्प का उपयोग कर रहा: packagingOptions

{ 
    exclude 'AndroidManifest.xml' 
    exclude 'META-INF/DEPENDENCIES' 
    exclude 'META-INF/notice.txt' 
    exclude 'META-INF/license.txt' 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE.txt' 
    exclude 'META-INF/MANIFEST.MF' 
    exclude '!META-INF/MANIFEST.MF' 
    exclude 'META-INF/services/javax.annotation.processing.Processor' 
} 

आपको बता, मैं प्रकट फ़ाइलों को छोड़कर कर रहा हूँ कर सकते हैं के रूप में ...

बस इसे परीक्षण करने के लिए , मैं वापस संस्करण 0.12.0 में बदल गया और सबकुछ फिर से काम करता है, 0.13 पर वापस। * और यह टूट जाता है (लेकिन मुझे 0.13 की आवश्यकता है। *)!

  1. Robospice
  2. रेट्रोफिट
  3. OkHttp
  4. डार्ट
  5. Icepick
  6. Butterknife
  7. crouton
  8. एस.एम.:

    इसके अलावा, मैं निम्नलिखित पुस्तकालयों का उपयोग कर रहा oothProgressBar

  9. NineoldsAndroid (BetterPickers के पुस्तकालय में)

किसी को भी इस मुद्दे का सामना किया है? यदि हां, तो क्या कोई मेरी मदद कर सकता है (इस मुद्दे पर 2 दिनों के लिए मेरे सिर को तोड़ रहा है!)? धन्यवाद!

+0

तरह लग रहा है आप केवल एक ही नहीं हैं: https://github.com/stephanenicolas/robospice/issues/365 – rciovati

+0

क्या यह काम करता है यदि आप अपनी होम निर्देशिका में .gradle फ़ोल्डर को हटाते हैं और पुनर्निर्माण करते हैं? अगर आप अपनी परियोजना को साफ करते हैं और पुनर्निर्माण करते हैं तो कैसे? –

+0

मैंने ग्रैडल कैश को हटाने का प्रयास किया, .gradle फ़ोल्डर, ... कुछ भी काम नहीं किया, गेटेन द्वारा जवाब हालांकि किया गया था! बिल्ड टूल्स में एक त्रुटि होने लगती है! – Superplastik

उत्तर

16

मैं एक ही मुद्दा था जब एंड्रॉयड Gradle प्लगइन 0.13 पर अपडेट करने के।

compile('com.squareup.retrofit:retrofit:1.6.1') { 
    exclude group: 'commons-io', module: 'commons-io' 
} 

संपादित करें:: और इस के साथ ही बार में सभी retrofit और robospice dependcies पर कर सकते हैं: मैं अपने build.gradle फ़ाइल में retrofit इस तरह से शामिल करके इसे ठीक करने में कामयाब रहे

compile('com.octo.android.robospice:robospice-retrofit:1.4.14') { 
    exclude group: 'commons-io', module: 'commons-io' 
} 

यह मिल जाएगा सभी अंतर्निहित निर्भरता स्वचालित रूप से (retrofit, robospice-core, robospice-cache, ...)।

+1

आंशिक रूप से हल किया गया! हालांकि मैं आपको जवाब दूंगा। वास्तविक समाधान समूह को बहिष्कृत करना था: रेट्रोफिट और सभी रोबोसिस भागों (रोबोसिस कोर, कैश और रेट्रोफिट प्लगइन)। बहुत बहुत धन्यवाद! मैं तुम्हारी एक कॉफी है! – Superplastik

+0

कॉफी के लिए धन्यवाद: पी आप इसे केवल एक निर्भरता के साथ कर सकते हैं। मेरे उत्तर में दूसरा भाग देखें। –

+0

मुझे अभी भी सभी 'बहिष्कृत समूहों' को परिभाषित करना था या धीरे-धीरे काम करने से मना कर दिया! – Superplastik

-4

समस्या उन libs में है जो आप उपयोग कर रहे हैं।

Gradle फ़ाइल में जोड़ें:

android { 
    packagingOptions { 
     exclude 'META-INF/DEPENDENCIES' 
     exclude 'META-INF/notice.txt' 
     exclude 'META-INF/LICENSE.txt' 
     exclude 'META-INF/MANIFEST.MF' 
     exclude 'META-INF/LICENSE' 
     exclude 'META-INF/NOTICE' 
    } 
} 
+0

मेरी पोस्ट पढ़ें, ये पहले से ही जोड़े गए थे! – Superplastik

+0

यह समस्या का समाधान नहीं करता है। – drc

15

मुझे एक ही समस्या थी। मेरे मामले में मैंने कुछ महीनों तक निर्माण नहीं किया था, और पाया कि निर्भरता compile 'org.apache.commons:commons-io:1.3.2' अब मान्य नहीं है (हालांकि मुझे लगता है कि जार अभी भी मेरे स्थानीय भंडार में थे)।

एक बार मैंने इसे compile 'commons-io:commons-io:1.3.2' में बदल दिया, प्रोगार्ड ठीक चला गया।

+0

यह एकमात्र फिक्स है जो मेरे लिए काम करता है। गेटलन ने इस मुद्दे को हल नहीं किया। – drc

+0

वही स्थिति, एक ही फिक्स। समझ में नहीं आता। –

+0

स्रोत: [यह आर्टिफैक्ट स्थानांतरित किया गया था] (https://mvnrepository.com/artifact/org.apache.commons/commons-io)। मुझे सही दिशा बताने के लिए धन्यवाद! बाहर निकलता है, यह एक नया संस्करण भी है, इस लेखन के रूप में lib 2.5 – yuval

1

सीजेएस उत्तर का उपयोग करके मैं इसे हल करने में सक्षम था। यहां तक ​​कि गेटन उत्तर भी काम करता है।

इस को जोड़ना मैं, इस का उपयोग करते हुए यदि आपके compileSdkVersion 19 है (मेरे मामले में)

compile ('org.apache.httpcomponents:httpmime:4.3'){ 
    exclude group: 'org.apache.httpcomponents', module: 'httpclient' 
} 
compile ('org.apache.httpcomponents:httpcore:4.4.1'){ 
    exclude group: 'org.apache.httpcomponents', module: 'httpclient' 
} 
compile 'commons-io:commons-io:1.3.2' 
बाकी

अपने compileSdkVersion है अगर द्वारा समस्या हल हो जाती 23 तो का उपयोग

android { 
useLibrary 'org.apache.http.legacy' 
packagingOptions { 
    exclude 'META-INF/DEPENDENCIES' 
    exclude 'META-INF/NOTICE' 
    exclude 'META-INF/LICENSE' 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE.txt' 
    } 
} 
संबंधित मुद्दे