今天,当我使用android运行程序时,我遇到了这个问题. Gradle会这样出错:
Error:Execution failed for task
‘:app:createAnzhiDebugMainDexClassList’.
com.android.ide.common.internal.LoggedErrorException: Failed to run command:
java -Xmx1024M -cp /Users/Hades/Library/Android/sdk/build-tools/21.1.2/lib/dx.jar com.android.multidex.ClassReferenceListBuilder /Users/Hades/Work/Code/RentAgent/RentAgent/app/build/intermediates/multi-dex/anzhi/debug/componentClasses.jar /Users/Hades/Work/Code/RentAgent/RentAgent/app/build/intermediates/multi-dex/anzhi/debug/allclasses.jar
Error Code:
1
Output:
Unable to locate a Java Runtime to invoke.
你可以帮帮我吗?
解决方法:
设置应用程序开发项目以使用multidex配置需要对应用程序开发项目进行一些修改.特别是,您需要执行以下步骤:
>更改您的Gradle构建配置以启用multidex
>修改清单以引用MultiDexApplication类
修改您的应用Gradle构建文件配置,以包括支持库并启用multidex输出.
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
...
minSdkVersion 14
targetSdkVersion 21
...
// Enabling multidex support.
multiDexEnabled true
}
...
}
dependencies {
compile 'com.android.support:multidex:1.0.1'
}
阅读有关的官方文件
MultiDex
如果您的Application类正在扩展其他一些类,而您又不想或不能更改它,请重写attachBaseContext(),如下所示:
public class MyApplication extends MultiDexApplication {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
标签:android
来源: https://codeday.me/bug/20191119/2036255.html