Android java.exe 以非零退出值 1 完成

Android java.exe finished with non-zero exit value 1

我试过查看类似的解决方案,但没有任何解决方案奏效。我以前 运行 个应用程序没有问题,但我的新应用程序突然开始给我带来问题。当我尝试 运行 它总是失败说:

Error:Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1

这是控制台显示的内容:

Executing tasks: [:app:assembleDebug]

Configuration on demand is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugNdk UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportSupportV42200Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava UP-TO-DATE
:app:preDexDebug
AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual        Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}

AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}


FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException:     org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 2.614 secs

AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}

这个应用程序非常简单,我没有对它的库存布局做太多改动。它专为棒棒糖设计,仅使用库存功能。这是 build.gradle:

apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"

defaultConfig {
    applicationId "com.package.app"
    minSdkVersion 21
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:22.0.0'
}

删除行:

('com.android.support:support-v4:22.0.0')

来自依赖项(在 build.gradle 中):

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:22.0.0'
}

我几乎尝试了所有方法,直到我尝试 运行 从命令行中的错误脚本:

dx.bat -JXmx1536m --dex --output \build\intermediates\pre-dexed\debug\classes-01b5c6cd66151f573da9773c18af55d10736a24e.jar build\intermediates\exploded-aar\aaa-release\classes.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

然后我在gradle脚本中注释掉了开发者的内存设置:

//        javaMaxHeapSize "1536m"

我能够通过这个错误。我需要增加笔记本电脑的内存。

一定是我的 Java 安装有问题。我删除了 Java (C://program files/Java/jdk) 和 jre 文件夹的所有痕迹,并从 official page 重新安装它,现在它工作正常。

由于可绘制资源冲突而遇到相同的错误。我做了一个干净的项目,不再遇到错误。

将库 icepick 添加到我的 gradle 依赖项后,我遇到了同样的问题。删除依赖后,一切似乎都很好。一旦我知道为什么会出现这个问题,我会再次写在这里

RAM 有问题。我的 Messages Gradle Build

中有类似的消息
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal. 
ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_45\bin\java.exe'' 
finished with non-zero exit value 1

原因: 我的 OS windows 8.1 笔记本电脑上没有空闲内存。

解决方法:我关闭了几个不需要的程序。在那之后,我有更多的空闲内存,我的项目是在 android studio 中构建的。

我在 Android Studio 中将我的项目从我的笔记本电脑转移到我的桌面后出现此错误。

我的解决方案是重启Android Studio,然后清理项目,最后执行项目。

您必须更新 SDK 管理器(支持库等)中的所有块,所有未更新的库和包。在此之后,您必须将 gradle 个文件与项目同步并高兴!

就我而言,解决方案是关闭 Android Studio 并终止 java 进程,该进程非常大 (1.2 GB)。在此之后,我的项目运行正常(OS X Mount Lion,Android Studio 1.2.2,iMac Mid 2011 4GB Ram)。

将 jar 文件添加到项目的 lib 文件夹并将其添加到 build.gradle 文件后,作为 compile'path example' 当您同步 gradle 它添加了一个额外的行作为 compile files('libs/example.jar')。您只需要删除之前添加到 build.gradle 文件的行,即 gradle 同步后的编译路径示例。您还需要删除行 compile fileTree(dir: 'libs', include: '*.jar')

我有同样的问题,在尝试了这里的每个答案后,我注意到我重命名的包在导入它的 class 中没有重命名。我修改了名字,马上就解决了问题

这可能是因为您的应用程序超过了 65k 的方法数,从而导致 dex 错误。除了在您的应用中启用多索引之外,没有其他解决方案。

compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

将此添加到您的 gradle 构建中。它对我有用

我的答案是为构建过程释放内存,关闭编程或重启机器(win10 似乎管理内存比 win7 差)

为什么它为我修复了?

在构建过程中,android studio 没有找到足够的内存来编译,但是它没有显示任何错误。 :app:preDexDebug 错误发生在我试图将编译后的应用程序上传到 phone.

有时我可以通过这一点(没有 app:preDexDebug 错误),但是当 运行 android 上的应用程序时,我得到 "ClassNotFound" 异常。这是发现 android studio 由于内存不足而未在构建期间编译我的所有文件的线索(win10 要求我关闭 android studio 以节省构建期间的内存),即使IDE 显示构建成功。

好吧,它可能会带来很多问题。首先检查您是否弄乱了一些文件放置。例如,我所做的是将非 xml 文件放在 anim 文件夹中,这是不允许的。所以看看你是不是也遇到过这样的事情

您是否启用了多索引?请使用 MultiDexApplication 扩展您的主应用程序 class。在错误发生之前,我收到了额外的异常消息。他们如下。

Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded

Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
2 errors; aborting

这清楚地表明错误是由于内存不足造成的。请尝试以下操作:

  1. 使用 MultiDexApplication 扩展您的主应用程序 class。
  2. 从后台关闭未使用的应用程序并重新启动 Android Studio。

这样就可以了 ;)

给这位妈妈一个机会:

 dependencies {
        classpath 'com.android.tools.build:gradle:1.4.0-beta6'
    }

别忘了收藏 this

您需要做的就是终止一些 运行 进程并释放内存 (RAM) 上的 space。您可以尝试关闭一些高内存消耗的程序。您也可以尝试重新启动 Android Studio。它对我有用。

我刚才遇到了同样的问题,结果证明是由于我的一个模块中的错误 attrs.xml 文件引起的。该文件最初为我的自定义视图之一提供了两个可设置样式的属性,但当我发现不再需要它时我删除了一个。然而,这显然没有在 IDE 中正确注册,因此当找不到该属性时构建失败。

我的解决方案是重新添加属性,运行 a clean project,之后构建成功,我可以再次成功删除属性,没有任何进一步的问题。

希望这对某人有所帮助。

经过大量的网上冲浪,我发现问题是 GC 开销(内存不足)。通过将以下代码添加到我的 build.gradle 中,节省了我的一天。

android {

    dexOptions {
        incremental = true;
        preDexLibraries = false
        javaMaxHeapSize "4g" // 2g should be also OK
    }

}

参考 - ProcessException: org.gradle.process.internal.ExecException finished with non-zero exit value 2

清理和重建项目对我有用。在 Android 工作室:

Build -> Clean Project 
Build -> Rebuild Project

参考link

在我的例子中设置 Java 最大堆大小从 2g 到 1g 有效。

将以下内容添加到应用程序模块的 build.gradle 文件

android {
    dexOptions {
        javaMaxHeapSize "1g"
    }
}

导致

的原因有很多

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe'' finished with non-zero exit value 1

如果您没有达到 dex 限制,但您收到与此类似的错误 Error:com.android.dx.cf.iface.ParseException: name already added: string{"a"}

尝试禁用 proguard,如果它能够顺利编译,那么您将需要找出是哪个库导致了它并将其添加到 proguard-rules.pro 文件

就我而言,当我将 compile 'com.google.android.gms:play-services-ads:8.3.0' 更新为 compile 'com.google.android.gms:play-services-ads:8.4.0'

时会出现此问题

解决方法之一是我将其添加到 proguard-rules.pro 文件

## Google AdMob specific rules ##
## https://developers.google.com/admob/android/quick-start ##

-keep public class com.google.ads.** {
   public *;
}

我用开玩笑的方式解决了这个问题。我有两个 class,名称为 startDlStartDl。我只是将其中一个更改为 StartDownload,我的问题就解决了。资源也可以有一个已经被项目中的任何资源保留的名称。只需将相似的名称重命名为不同的即可。

解决方案

1.Just清理项目并检查其是否正常工作

2.Just关闭所有垃圾任务后重启android工作室

3.If 上面的东西都不起作用在 gradle.build 文件中添加这个

android {

    dexOptions {
        incremental = true;
        preDexLibraries = false
        javaMaxHeapSize "4g" 
    }

}

或许您可以更改您的 buildToolsVersion 编号。

这是我的问题:

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\ProgramTools\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

我的build.gradle:

android {
    compileSdkVersion 23
    buildToolsVersion "24.0.0"

    defaultConfig {
        applicationId "com.pioneers.recyclerviewitemanimation"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

我只是将 buildToolsVersion 更改为 buildToolsVersion "23.0.2",问题就解决了。

对我来说这很有效:

defaultConfig {
    multiDexEnabled true
}

这个解决方案对我有用

安装JavaJDK8.

然后,转到“工具”->“选项”->“Apache Cordova 工具”->“环境变量覆盖”并将 JDK 的路径设置为 "C:\Program Files\java\jdk1.8.0_121" 以获取 Java 8 Java 7.

了解更多信息http://www.developersite.org/103-141954-android

实验我找到了方法:

A​​pp 扩展应用程序 MultiDexApplication

并删除

org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

来自 gradle.properties

使用选项 assembleandroidtest,如下图所示。这样您就可以找到有关发生的错误的更多信息: