2017-11-02 9 views
8

मैं एंड्रॉइड स्टूडियो 3.0 चला रहा हूं। मैं वर्तमान में ग्लाइड संस्करण 4.3.0 काम करने की कोशिश कर रहा हूं, लेकिन संस्करण 4.2.0 के साथ समान समस्याएं थीं।ग्लाइड पैकेज के साथ एंड्रॉइड प्रोजेक्ट बनाने की कोशिश कर रहा है, "डेक्स मर्ज करने में असमर्थ" त्रुटि

मेरी परियोजना https://github.com/bumptech/glide से डाउनलोड की गई मेरी build.gradle फ़ाइल में ग्लाइड पैकेज निर्भरताओं को जोड़ने के बिना ठीक चलती है। मैंने यहां सेटअप निर्देशों का भी पालन किया। सबसे पहले मैंने अपने libs फ़ोल्डर में जार फ़ाइल जोड़ा, और फिर निर्भरताओं को जोड़ा।

पूर्ण त्रुटि

Error:Execution failed for task 
':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. 
> com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex 

मैं इस मुद्दे को एक बहुत शोध किया है, लेकिन केवल एक अन्य संकुल जो उन पैकेज के लिए विशिष्ट फिक्स प्रदान की के लिए समाधान पाया है, लेकिन मैं इस के लिए एक समाधान खोजने के लिए सक्षम नहीं था विशिष्ट पैकेज

यहां पूर्ण ग्रेड स्टैक ट्रेस है।

* Exception is: 
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithMultidexlistForDebug'. 
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100) 
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70) 
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63) 
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54) 
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) 
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88) 
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52) 
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) 
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54) 
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) 
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34) 
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107) 
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241) 
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230) 
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124) 
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80) 
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105) 
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99) 
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625) 
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580) 
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99) 
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63) 
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46) 
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55) 
Caused by: java.lang.RuntimeException: java.io.IOException: Can't write [C:\Users\Alex\AndroidStudioProjects\ChanReader\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\Alex\.gradle\caches\modules-2\files-2.1\com.github.bumptech.glide\glide\4.3.0\5ef2a3700ab3320576eab21ff504189e5a92a350\glide-4.3.0.jar(;;;;;;**.class)] (Duplicate zip entry [glide-4.3.0.jar:com/bumptech/glide/util/Synthetic.class])) 
    at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55) 
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104) 
    at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:213) 
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) 
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173) 
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134) 
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121) 
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197) 
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107) 
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111) 
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92) 
    ... 27 more 
Caused by: java.io.IOException: Can't write [C:\Users\Alex\AndroidStudioProjects\ChanReader\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\Alex\.gradle\caches\modules-2\files-2.1\com.github.bumptech.glide\glide\4.3.0\5ef2a3700ab3320576eab21ff504189e5a92a350\glide-4.3.0.jar(;;;;;;**.class)] (Duplicate zip entry [glide-4.3.0.jar:com/bumptech/glide/util/Synthetic.class])) 
    at proguard.OutputWriter.writeOutput(OutputWriter.java:187) 
    at proguard.OutputWriter.execute(OutputWriter.java:79) 
    at proguard.ProGuard.writeOutput(ProGuard.java:427) 
    at proguard.ProGuard.execute(ProGuard.java:175) 
    at com.android.build.gradle.internal.transforms.BaseProguardAction.runProguard(BaseProguardAction.java:61) 
    at com.android.build.gradle.internal.transforms.MainDexListTransform.shrinkWithProguard(MainDexListTransform.java:232) 
    at com.android.build.gradle.internal.transforms.MainDexListTransform.transform(MainDexListTransform.java:184) 
    at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:222) 
    at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:218) 
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102) 
    ... 39 more 
Caused by: java.io.IOException: Can't read [C:\Users\Alex\.gradle\caches\modules-2\files-2.1\com.github.bumptech.glide\glide\4.3.0\5ef2a3700ab3320576eab21ff504189e5a92a350\glide-4.3.0.jar(;;;;;;**.class)] (Duplicate zip entry [glide-4.3.0.jar:com/bumptech/glide/util/Synthetic.class]) 
    at proguard.InputReader.readInput(InputReader.java:188) 
    at proguard.InputReader.readInput(InputReader.java:158) 
    at proguard.OutputWriter.writeOutput(OutputWriter.java:176) 
    ... 48 more 
Caused by: java.io.IOException: Duplicate zip entry [glide-4.3.0.jar:com/bumptech/glide/util/Synthetic.class] 
    at proguard.io.JarWriter.getOutputStream(JarWriter.java:138) 
    at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:106) 
    at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:106) 
    at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:92) 
    at proguard.io.ClassRewriter.read(ClassRewriter.java:68) 
    at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87) 
    at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87) 
    at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87) 
    at proguard.io.JarReader.read(JarReader.java:65) 
    at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65) 
    at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53) 
    at proguard.InputReader.readInput(InputReader.java:184) 
    ... 50 more 
+0

मेरा सुझाव है कि आप अपना प्रश्न संपादित करें और अपने ग्रैडल कंसोल के पूरे आउटपुट को पोस्ट करें, न कि केवल एक पंक्ति। आउटपुट में आपकी समस्या का विवरण कहीं और है। – CommonsWare

+0

@ कॉमन्सवेयर ने अभी किया। सलाह के लिये धन्यवाद। –

+0

हम्मम्म ... कुछ अस्थायी स्थान पर 'सी: \ उपयोगकर्ता \ एलेक्स \ .gradle \ caches \ modules-2 \ files-2.1 \ com.github.bumptech.glide' को स्थानांतरित करने का प्रयास करें, फिर एक नया निर्माण करें। शायद आपको एक भ्रष्ट जार मिला है। अगर समस्या बनी रहती है, तो मैं ग्लाइड के साथ एक समस्या दर्ज करूंगा, क्योंकि शायद उनके जेएआर को फिक्सिंग की जरूरत है। आप अस्थायी रूप से '4.2.0' तक गिरने का भी प्रयास कर सकते हैं। – CommonsWare

उत्तर

5

समस्या मेरी परियोजना के libs फ़ोल्डर में जार फ़ाइल जोड़ रही थी। जाहिर है, इसने एक डुप्लिकेशंस मुद्दा बनाया है। इसे हटाने के बाद, मेरा आवेदन ठीक चलाता है।

मैंने मूर्खता से ऐसा इसलिए किया क्योंकि मैंने पिकासो लाइब्रेरी का उपयोग किया था जिसमें मैंने ऐसा किया था। मुझे लगता है कि यह मानक अभ्यास था।

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

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