我在编译仪器测试时遇到此错误。
错误:com.android.builder.dexing.DexArchiveBuilderException:无法处理/Users/rafaelruizmunoz/SourceTree/Weather/app/build/intermediates/transforms/desugar/androidTest/debug/1.jar
错误:com.android.builder.dexing.DexArchiveBuilderException:dexing org / assertj / core / api / LongPredicateAssert.class
时出错错误:com.android.dx.cf.code.SimException:默认或静态接口方法,不使用--min-sdk-version> = 24
我尝试在multiDexEnabled
中启用/停用build.gradle
,但没有任何帮助。
我的android
build.gradle
:
android {
compileSdkVersion 27
defaultConfig {
applicationId "com.**.weather"
minSdkVersion 16
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
targetCompatibility 1.8
sourceCompatibility 1.8
}
}
答案 0 :(得分:22)
在gradle.properties
添加android.enableD8=true
这应该有用。
请注意,导出并将apk上传到具有d8启用功能的Play商店时,存在一个已知错误。从Play商店下载时,该应用程序无法在某些设备上运行。
答案 1 :(得分:3)
如果您正在使用guava,tou可以尝试将其升级到最新的特定于Android的构建
AllCops:
Exclude:
- 'vendor/**/*'
- 'spec/fixtures/**/*'
- 'tmp/**/*'
- 'db/schema.rb'
- 'db/migrate/**/*'
- 'lib/tasks/**/*'
当我使用非android guava构建时,这解决了我的错误。
答案 2 :(得分:2)
我对我来说也有同样的错误,这是因为okhttp,并且我将其降级为以下形式:
对此:
implementation "com.squareup.okhttp3:okhttp:3.12.1"
答案 3 :(得分:1)
使用最新的android studio 3.2和gradle,我们还可以通过以下方式解决该问题
implementation 'com.android.support:multidex:1.0.3' in app build.gradle
答案 4 :(得分:0)
我遇到了同样的问题,我通过在运行配置中禁用了高级配置来解决了这个问题。
编辑配置->应用程序->分析->启用高级分析(取消选中此选项)。
答案 5 :(得分:-1)
将这些行添加到gradle:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}