Android studio 无法运行命令 : java -Xmx1024M -cp

标签 android

今天我遇到这个问题,当我使用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 配置需要您对应用开发项目进行一些修改。特别是您需要执行以下步骤:

  1. 更改 Gradle 构建配置以启用 multidex
  2. 修改 list 以引用 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 类正在扩展某个其他类,而您不想或不能更改它,请override attachBaseContext(),如下所示:

public class MyApplication extends MultiDexApplication { 
   @Override 
   protected void attachBaseContext(Context base) { 
      super.attachBaseContext(base); 
      MultiDex.install(this); 
   } 
}

关于Android studio 无法运行命令 : java -Xmx1024M -cp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33666261/

相关文章:

android - 在 FusedLocation 中接收模拟位置

java - 将数据从 Activity 传递到 android 中位于不同应用程序中的服务

android - 如何在Android模拟器中安装Google Play Service 7.3.0或以上版本?

android - 创建基础 PSD 来为 mdpi、320/480px 设备设计 Android App UI

javascript - 我希望创建一个特定的下拉菜单(包括示例)

java - 如何从任何文本中识别字体类型

android - FCM 上游消息传递的可靠性如何?

android - 如何使用 Jetpack Compose 垂直堆叠文本并旋转?

android - 如何从已知联系人获取群组名称

android - 如何使用Kotlin从onClick事件获取源