以上就是给各位分享意外的最高级别异常:com.android.dex.DexException:定义了多个dex文件,其中也会对errorc2062意外的类型"void"进行解释,同时本文还将给你拓展
以上就是给各位分享意外的最高级别异常:com.android.dex.DexException:定义了多个dex文件,其中也会对error c2062 意外的类型"void"进行解释,同时本文还将给你拓展android 7.0 抛出 FileUriExposedException异常、Android Gradle DexException:多个dex文件定义Lorg / hamcrest / Description、Android Studio 遇到的 java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessE...、android – DexArchiveMergerException:无法合并dex等相关知识,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:- 意外的最高级别异常:com.android.dex.DexException:定义了多个dex文件(error c2062 意外的类型"void")
- android 7.0 抛出 FileUriExposedException异常
- Android Gradle DexException:多个dex文件定义Lorg / hamcrest / Description
- Android Studio 遇到的 java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessE...
- android – DexArchiveMergerException:无法合并dex
意外的最高级别异常:com.android.dex.DexException:定义了多个dex文件(error c2062 意外的类型"void")
我尝试使用
Android Studio 在我的Android应用程序上使用Google Play服务时遇到麻烦。
我已经尝试了一切,但仍然无法正常工作。
这是错误。
Execution failed for task '':app:dexDebug''.
com.android.ide.common.internal.LoggedErrorException: Failed to run command:
/Users/jghg/Desktop/My App/Android/SDK/android-sdk-mac_86/build-
tools/19.0.1/dx –dex –output /Users/jghg/Desktop/My
App/Eureka/UDA/app/build/libs/app-debug.dex /Users/jghg/Desktop/My
App/Eureka/UDA/app/build/classes/debug /Users/jghg/Desktop/My
App/Eureka/UDA/app/build/dependency-cache/debug /Users/jghg/Desktop/My
App/Eureka/UDA/app/build/pre-
dexed/debug/classes-08979151dd1373bd3f799299d93376d22d4afa46.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/classes-167b9d3c5d689abe004c3fa5b0bcb945d3f0fc8e.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-dexed/debug/google-play-
services-ec20f8af7bb457c5095cae1afa0cee722582f198.jar /Users/jghg/Desktop/My
App/Eureka/UDA/app/build/pre-
dexed/debug/support-v4-13.0.0-473d85b8d55c88bfed3404072e6c132f96543429.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/support-v4-19.0.1-861cc05365a0e9262c764da37d61e3f93dc16de6.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/support-v4-19.0.1-dcc11377c764caea791f711123b8b678f876c3b6.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/twitter4j-async-3.0.5-0904cb320186fb23a9a9bf25a048c5bc4ec07bc2.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/twitter4j-core-3.0.5-41d2d5805e2d90cf77813a126306c4cbe22583ae.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/twitter4j-examples-3.0.5-adc1ee9b037c8061429560e6a5fe89ce8e502db6.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/twitter4j-media-
support-3.0.5-37d138cdc631738d13ddb6f4d34c560a9cd8e048.jar
/Users/jghg/Desktop/My App/Eureka/UDA/app/build/pre-
dexed/debug/twitter4j-stream-3.0.5-c96c138ea216b25631a1a8b47520ecaf33f288d8.jar
Error Code: 2 Output: UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define
Lcom/google/ads/AdRequest$ErrorCode; at
com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) at
com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) at
com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) at
com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) at
com.android.dx.merge.DexMerger.merge(DexMerger.java:188) at
com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) at
com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) at
com.android.dx.command.dexer.Main.run(Main.java:230) at
com.android.dx.command.dexer.Main.main(Main.java:199) at
com.android.dx.command.Main.main(Main.java:103)
Thanks. Best Regards.
答案1
小编典典当您在build.gradle的依赖项中多次包含相同的库/目录时,将发生错误。
因此,您拥有主要的“应用程序”,然后又有一堆子应用程序/模块/库。这些库是:1)gene_test_library
,2)genes_nine_old_androids_library和3)swipe_list_view_library
。
我叫Gene,所以这就是为什么所有这些“ gene”库的原因。
在build.gradlefor
中“app”
,我有:
dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') compile ''com.android.support:appcompat-v7:21.0.0'' compile project('':libraries:gene_test_library'') //compile project('':libraries:genes_nine_old_androids_library'') compile project('':libraries:swipe_list_view_library'')}
在 build.gradle
for gene_test_library
, 我什么也没有:
dependencies {}
Inside build.gradle
for gene_nine_old_androids_library
, I have:
dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) compile ''com.android.support:appcompat-v7:21.0.0''}
Inside build.gradle
for swipe_list_view_library
, I have:
dependencies { compile ''com.nineoldandroids:library:2.4.0+'' compile fileTree(dir: ''libs'', include: [''*.jar'']) compile ''com.android.support:appcompat-v7:21.0.0''}
这行代码compile fileTree(dir: ''libs'', include: [''*.jar''])
仅
表示“嘿,在此模块内的''libs''
文件夹内查找所有jar
文件。我在任何模块的libs文件夹中都没有任何内容,因此您
可以忽略该行代码。
所以我们可以说我取消了//compile project('':libraries:genes_nine_old_androids_library'')在build.gradle
该“app”模块。然后我会得到“UNEXPECTED TOP-LEVEL EXCEPTION:”
错误。这是为什么?
好吧,//compile project('':libraries:genes_nine_old_androids_library'')
在build.gradlefor
中编写内容与获取模块“app”的构建依赖项“genes_nine_old_androids_library”
并将其放置在那里相同。因此,
取消注释该//compile project('':libraries:genes_nine_old_androids_library'')
语句,build.gradlefor“ app”
模块变为:
dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') compile ''com.android.support:appcompat-v7:21.0.0'' compile project('':libraries:gene_test_library'') ***compile fileTree(dir: ''libs'', include: [''*.jar''])*** ***compile ''com.android.support:appcompat-v7:21.0.0''*** compile project('':libraries:swipe_list_view_library'')}
注意现在如何compile ''com.android.support:appcompat-v7:21.0.0''
显示
2倍。这就是错误的来源。
android 7.0 抛出 FileUriExposedException异常
参考官方解释 https://developer.android.com/reference/android/os/FileUriExposedException.html
解决办法 https://developer.android.com/reference/android/support/v4/content/FileProvider.html
大致处理步骤:
1. 在mainfest中加入FileProvider注册
<manifest>
...
<application>
...
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="App包名.fileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
...
</application>
</manifest>
2. 新建res/xml/file_paths.xml文件
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<files-path name="my_images" path="images/"/>
<files-path name="my_docs" path="docs/"/>
</paths>
<paths> 中可以定义以下子节点
子节点 | 对应路径 | 示例 |
---|---|---|
files-path | Context.getFilesDir() | <files-path name="name" path="path" /> |
cache-path | Context.getCacheDir() | <cache-path name="name" path="path" /> |
external-path | Environment.getExternalStorageDirectory() | <external-path name="name" path="path" /> |
external-files-path | Context#getExternalFilesDir(String) Context.getExternalFilesDir(null) | <external-files-path name="name" path="path" /> |
external-cache-path | Context.getExternalCacheDir() | <external-cache-path name="name" path="path" /> |
3. 使用示例
File imagePath = new File(Context.getFilesDir(), "images");
File newFile = new File(imagePath, "default_image.jpg");
Uri contentUri = FileProvider.getUriForFile(getContext(), "App包名.fileprovider", newFile);
4. 遇到的问题
Attempt to invoke virtual method ''android.content.res.XmlResourceParser android.content.pm.PackageItemInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)'' on a null object reference
原因:mainfest中 android:authorities 与 代码 FileProvider.getUriForFile(getContext(), "App包名.fileprovider", newFile);App包名.fileprovider
不一致
Android Gradle DexException:多个dex文件定义Lorg / hamcrest / Description
com.android.dex.DexException:多个dex文件定义Lorg / hamcrest / Description
尝试通过Android Studio或我的应用程序上的Gradle命令行进行调试构建/测试时发生.
发布版本(没有测试)工作正常,但只要包含测试(hamcrest是测试库),构建就会因上述错误而失败.
我已经检查了我的模块依赖项,并且没有重复的要求,gradle -q依赖项证实了这一点.
项目settings.gradle
include ':[library module]'
include ':[main module]'
项目build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
classpath 'org.robolectric.gradle:gradle-android-test-plugin:0.9.+'
}
}
allprojects {
repositories {
mavenCentral()
}
}
[library module] build.gradle
apply plugin: 'android-library'
android {
compileSdkVersion 19
buildToolsversion "19.0.0"
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
}
packagingOptions {
exclude 'meta-inf/LICENSE.txt'
exclude 'meta-inf/NOTICE.txt'
}
}
dependencies {
compile 'com.google.zxing:core:3.0.+'
compile 'com.bugsnag:bugsnag-android:2.1.1+'
}
[主模块] build.gradle
apply plugin: 'android'
android {
signingConfigs {
release {
[...]
}
}
sourceSets {
main {
manifest.srcFile 'src/main/AndroidManifest.xml'
res.srcDirs = ['src/main/res']
}
androidTest {
setRoot('src/test')
}
instrumentTest {
}
}
compileSdkVersion 19
buildToolsversion '19.0.0'
defaultConfig {
minSdkVersion 14
targetSdkVersion 19
testPackageName "[main.packageName].tests"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
packagingOptions {
exclude 'meta-inf/LICENSE.txt'
exclude 'meta-inf/NOTICE.txt'
}
}
apply plugin: 'android-test'
androidTest {
// configure the set of classes for JUnit tests
include '**/*Test.class'
// configure max heap size of the test JVM
maxHeapSize = "2048m"
}
repositories {
maven { url 'https://repo.commonsware.com.s3.amazonaws.com' }
maven { url 'https://oss.sonatype.org/content/repositories/snapshots/' }
}
dependencies {
androidTestCompile 'junit:junit:4.10'
androidTestCompile 'org.robolectric:robolectric:2.3-SNAPSHOT'
androidTestCompile 'com.squareup:fest-android:1.0.+'
compile project(':[library module]')
compile 'com.github.gabrielemariotti.changeloglib:library:1.4.+'
compile 'com.google.code.gson:gson:2.2.4'
compile 'com.google.android.gms:play-services:+'
compile 'com.android.support:appcompat-v7:+'
compile ('de.keyboardsurfer.android.widget:crouton:1.8.+') {
exclude group: 'com.google.android', module: 'support-v4'
}
compile files('libs/CWAC-LoaderEx.jar')
compile 'com.squareup.okhttp:okhttp:1.5.+'
compile 'com.octo.android.robospice:robospice:1.4.11'
compile 'com.octo.android.robospice:robospice-cache:1.4.11'
compile 'com.octo.android.robospice:robospice-retrofit:1.4.11'
compile 'com.commonsware.cwac:security:0.1.+'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
}
解决方法:
Robolectric 2.3依赖于JUnit 4.8.1(版本显式).您正在导入JUnit 4.10(版本显式). Hamcrest可能只是dex窒息的许多重复项中的第一个 – 尝试将JUnit需求版本更改为4.8(或者从Robolectric依赖项中排除JUnit).
Android Studio 遇到的 java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessE...
在将一个 Eclipse 的项目转移到 AndroidStudio 的过程中,碰到了的问题如下:
Error:Execution failed for task '':learnChinese:mergeDebugResources''.
> Error: java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException:
从报错来看可以定位到时资源文件出问题了,一个在 Android 上运行好好的项目怎么会在 AndroidStudio 里面出现这种问题,顿觉头大了,查阅各种资料后来才发现了原来是.9.png 图片造成的,真是作孽啊~
“点九” 是 andriod 平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png,也就是说项目资源文件夹中,只要图片的文件后缀是.9.png 的,就说明这是点 9 图片,当我们用 Eclipse 等编译的时候,它遇到文件后缀是.9.png 的文件,首先检查它实际上是不是点 9 图片,如果是,按点 9 图片处理;如果不是,按找默认图片处理。也就是说 Eclipse 自动帮我们完成了转化,容忍了我们的图片格式错误。
AndroidStudio 使用的是 android-maven-plugin 插件,在 aAndroidStudio 下报错的原因,是因为声明为点 9 图片的文件,实际上不是真正的点 9 图片,解析图片出错。android-maven-plugin 插件会严格检查图片格式,如果不匹配就报错。
解决方法:
- 要么把图片制作成点 9 图片,要么去掉图片文件名中的.9;
- 有一个朋友他出现这个问题的原因是公司的加密系统对图片进行了加密,导致 AS 解析图片出错,去除对这类图形文件的加密,问题也能得到解决;
- 网上看到还有一种可能是:手动把图片等各式改过,比如图片原本是 jpg 格式然后强制改成 png 的也可能会出问题,改回原本的格式即可。
-
去除掉 PNG 合法性检测,在 build.gradle 里的 buildToolsVersion 下面添加以下两句:
android { ... aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false ... }
android – DexArchiveMergerException:无法合并dex
就在昨天从2.3.3版本更新Android studio 3.0之后,我面临与DexMergerException相关的问题.
其他人也发布了与this相关的问题.但是在这个问题中,我想分析堆栈跟踪以找到相关的解决方案(因为我在这里是newbiew ..).
即使排除了可能正在使用它的组,我也无法解决它.由于我不知道哪个组件与HttpCore发生冲突所以我使用此代码来排除httpCore:
implementation ('com.android.volley:volley:1.0.0') {
exclude group: 'org.apache.httpcomponents'
}
请检查终端logcat,这对于找出根问题很有用:
D:\Office_Work\Android\MnE App>gradlew build --stacktrace
Starting a Gradle Daemon, 2 incompatible and 9 stopped Daemons Could not be reused, use --status for details
> Task :app:compileDebugJavaWithJavac
Note: D:\Office_Work\Android\MnE App\app\src\main\java\com\mindtree\igxbridge\measurementandevaluation\util\ConnectionUtils.java uses or overrides a deprecated AP
I.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
FAILURE: Build Failed with an exception.
* What went wrong:
Execution Failed for task ':app:transformClassesWithMultidexlistForDebug'.
> java.io.IOException: Can't write [D:\Office_Work\Android\MnE App\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\m1040033\.g
radle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.3.2\31fbbff1ddbf98f3aa7377c94d33b0447c646b6e\httpcore-4.3.2.jar(;;;;;;**.class)] (Duplicate
zip entry [httpcore-4.3.2.jar:org/apache/http/annotation/NotthreadSafe.class]))
* Try:
Run with --info or --debug option to get more log output.
* 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 [D:\Office_Work\Android\MnE App\app\build\intermediates\multi-dex\debug\componentClasses.j
ar] (Can't read [C:\Users\m1040033\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.3.2\31fbbff1ddbf98f3aa7377c94d33b0447c646b6e\httpcore-4
.3.2.jar(;;;;;;**.class)] (Duplicate zip entry [httpcore-4.3.2.jar:org/apache/http/annotation/NotthreadSafe.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 [D:\Office_Work\Android\MnE App\app\build\intermediates\multi-dex\debug\componentClasses.jar] (Can't read [C:\Users\m1
040033\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.3.2\31fbbff1ddbf98f3aa7377c94d33b0447c646b6e\httpcore-4.3.2.jar(;;;;;;**.class)] (D
uplicate zip entry [httpcore-4.3.2.jar:org/apache/http/annotation/NotthreadSafe.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\m1040033\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.3.2\31fbbff1ddbf98f3aa7377c9
4d33b0447c646b6e\httpcore-4.3.2.jar(;;;;;;**.class)] (Duplicate zip entry [httpcore-4.3.2.jar:org/apache/http/annotation/NotthreadSafe.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 [httpcore-4.3.2.jar:org/apache/http/annotation/NotthreadSafe.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
我只需要一点提示就可以找出要在gradle文件中排除的组件.
谢谢.
解决方法:
在互联网上寻找很多选择之后.我想在build.gradle中包含一个配置标记来排除HttpCore:
configurations {
all*.exclude group: 'org.apache.httpcomponents', module:'httpclient'
}
希望它会帮助别人.
谢谢.
今天关于意外的最高级别异常:com.android.dex.DexException:定义了多个dex文件和error c2062 意外的类型"void"的分享就到这里,希望大家有所收获,若想了解更多关于android 7.0 抛出 FileUriExposedException异常、Android Gradle DexException:多个dex文件定义Lorg / hamcrest / Description、Android Studio 遇到的 java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessE...、android – DexArchiveMergerException:无法合并dex等相关知识,可以在本站进行查询。
本文标签: