android - transformexception - java util concurrent executionexception java lang unsupportedoperationexception




Android-错误:任务执行失败':app:transformClassesWithDexForRelease' (20)

问题是,当我切换到 debug 模式时,我可以运行我的应用程序,但是当我切换到 release 模式时,它会失败。

例外:

FAILURE:构建因异常而失败。

任务':app:transformClassesWithDexForRelease'的执行失败。 com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException:org.gradle.process。 internal.ExecException:进程'command'/ Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/bin/java''以非零退出值1结束

当我使用stacktrace运行gradle build命令时,这就是我得到的

./gradlew app:transformClassesWithDexForRelease --stacktrace

com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException:org.gradle.process。 internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java''以非零退出值1结束

例外情况是:

org.gradle.api.tasks.TaskExecutionException:任务':app:transformClassesWithDexForRelease'的执行失败。 在org.gradle上的org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)位于org.gradle.api.internal的org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)上的.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)位于org.gradle.api.internal.tasks.execution的org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52).tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) .skipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecu org.gradle.execution.taskgraph.DefaultTaskGraphExecuter上的ter.execute(ExecuteAtMostOnceTaskExecuter.java:43)org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.exe(EventTaskTraphExecuter.java) 185)org.gradle.execution.taskgraph.Abs​​tractTaskPlanExecutor $ TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)org.gradle.execution.taskgraph.Abs​​tractTaskPlanExecutor $ TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)at org.gradle.execution .taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)at at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)at org.gradle.execution.DefaultBuildExecuter.access $ 000(DefaultBuildExecuter.jav) a:23)org.gradle.execution.DefaultBuildExecuter $ 1.proceed(DefaultBuildExecuter.java:43)org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)at org.gradle.execution.DefaultBuildExecuter.execute( DefaultBuildExecuter.java:37)org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)org.gradle.initialization.DefaultGradleLauncher $ 4.run(DefaultGradleLauncher.java:154)atg.gradle.internal.Factories $ 1 。或者org.gradle.internal.progress.DefaultOperationExecutor.run(DefaultBuildOperationExecutor.java:52)org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)中的.create(Factories.java:22)。 gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151)org.gradle.initialization.DefaultGradleLauncher.access $ 200(DefaultGradleLauncher.java:32)at org.gradle.initialization.DefaultGradleLauncher $ 1.create(DefaultGradleLauncher.java:99)在组织。 gradle.initialization.DefaultGradleLauncher $ 1.create(DefaultGradleLauncher.java:93)org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java) :62)org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93)atg.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82)org.gradle.launcher.exec.InProcessBuildActionExecuter $ DefaultBuildController。运行(InProcessBuildActionExecuter.java:94)org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)at org .gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28)at org .gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:78)org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:48)at org.gradle.launcher.daemon.server.exec.ExecuteBuild .doBuild(ExecuteBuild.java:52)org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution) .java:120)org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) )org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)at org。 gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSi ngleUsedDaemon.java:34)org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call(ForwardClientInput.java) :74)在org.gradle.launcher的org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call(ForwardClientInput.java:72)atg.gradle.util.Swapper.swap(Swapper.java:38)位于org.gradle.launcher.daemon.server的org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)的.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)位于org.gradle.launcher.daemon.server.exec.LogToClient的org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)的.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)位于org.gradle.launcher.daemon.server.api.Daemo的org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)中的.doBuild(LogToClient.java:66) nCommandExecution.proceed(DaemonCommandExecution.java:120)org.gradle.launcher.daemon.server.exe.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute( BuildCommandOnly.java:36)org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java: 41)在org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy $ 1.run(StartBuildOrRespondWithBusy.java:50)at at org.gradle.launcher.daemon.server.DaemonStateCoordinator $ 1.run(DaemonStateCoordinator.java:246)位于org.gradle.internal.concurrent的org.gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54) .StoppableExecutorImpl $ 1.run(StoppableExecutorImpl.java:40)引起:java.lang。 RuntimeException:com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException:org.gradle。 process.internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java''在com.android.builder.profile中以非零退出值1结束。记录$ Block.handleException(Recorder.java:54)at com.android.builder.profile.ThreadRecorder $ 1.record(ThreadRecorder.java:57)at com.android.builder.profile.ThreadRecorder $ 1.record(ThreadRecorder.java: 47)位于org.gradle.api的org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)的com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:173) .internal.project.taskfactory.AnnotationProcessingTaskFactory $ IncrementalTask​​Action.doExecute(AnnotationProcessingTaskFactory.java:244)org.gradle.api.internal.project.taskfactory.AnnotationProcessi 位于org.gradle.api.internal.project.taskfactory的org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory $ IncrementalTask​​Action.execute(AnnotationProcessingTaskFactory.java:231)中的ngTaskFactory $ StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:220)。在org.gradle.api.internal.tasks.exe.exe.ExecuteActionsTaskExecuter的org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)中的AnnotationProcessingTaskFactory $ StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:209)。 executeActions(ExecuteActionsTaskExecuter.java:61)... 68更多引起:com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com。 android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java''以非结束 - 出口 com.android.build.grans上的值为1,在com.android.build.grans.internal.pipeline.TransformTask $ 3.call(TransformTask.java:178)的com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:422) com.android.build.gradle.internal.pipeline.TransformTask $ 3.call(TransformTask.java:174)at com.android.builder.profile.ThreadRecorder $ 1.record(ThreadRecorder.java:55)... 77更多由:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'command'/ Library / Java / JavaVirtualMachines / jdk1.8.0_73.jdk / Contents / Home / bin / java''在COM的com.android.builder.core.AndroidBuilder.runDexer(AndroidBuilder.java:1472)中以非零退出值1结束。 android.builder.core.AndroidBuilder.convertByteCode(AndroidBuilder.java:1389)at com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:250)... 80更多引起:java.util .concurrent.E xecutionException:com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'command'/ Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java' '在com.android.builder.core.AndroidBuilder.runDexer(AndroidBuilder.java:1456)中以非零退出值1结束... 82更多引起:com.android.ide.common.process.ProcessException:org。 gradle.process.internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java''在com.android.build中以非零退出值1结束。 gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:43)at com.android.builder.core.AndroidBuilder $ 2.call(AndroidBuilder.java:1464)at com.android.builder.core.AndroidBuilder $ 2.call( AndroidBuilder.java:1456)引起:org.gradle.process.internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java''以非完成零 在com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:41)的org.gradle.process.internal.DefaultExecHandle $ ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:367)退出值1 ...还有2个

我在用

  • Android Studio 2.0 Beta 6
  • Java版本:Java(TM)SE运行时环境(版本1.8.0_73-b02)
  • Gradle版本:com.android.tools.build:grad:2.0.0-beta6
  • 我启用了Multidex

我的build.gradle文件

apply plugin: 'com.android.application'
apply plugin: 'com.getkeepsafe.dexcount'

android {

    def VERSION_CODE = 52
    def VERSION_NAME = "1.0"
    compileSdkVersion 23
    buildToolsVersion '23.0.2'

    defaultConfig {
        applicationId "com.example.app"
        manifestPlaceholders = [appName: "Personal App"]
        minSdkVersion 14
        targetSdkVersion 23
        renderscriptTargetApi 19
        renderscriptSupportModeEnabled true
        versionCode VERSION_CODE
        versionName VERSION_NAME

        // Enabling multidex support.
        multiDexEnabled true
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
        encoding = 'UTF-8'
    }

    signingConfigs {
        livekeystore {
            storeFile file('../key.jks')
            keyAlias 'livekeystore'
            keyPassword '123asd'
            storePassword '123asd'
        }
    }


    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            zipAlignEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.burgerking

            manifestPlaceholders = [googleMapsKey: "@string/release_google_map_key", appNameSuffix: ""]
        }

        debug {
            applicationIdSuffix '.dev'
            debuggable true
            minifyEnabled false
            shrinkResources false
            zipAlignEnabled false

            manifestPlaceholders = [googleMapsKey: "@string/debug_google_map_key", appNameSuffix: ' (Dev-' + VERSION_CODE + ')']

        }
    }

    dexOptions {
        incremental true
        javaMaxHeapSize "4g" // 2g should be also OK
    }

    useLibrary 'org.apache.http.legacy'

}

repositories {
    maven { url 'https://mint.splunk.com/gradle/' }
    maven { url "http://dl.bintray.com/populov/maven" }
    mavenCentral()
}

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.4.2'
        classpath 'com.newrelic.agent.android:agent-gradle-plugin:4.244.0'
    }
}


dependencies {
    compile 'com.google.code.gson:gson:2.4'
    compile 'com.android.support:appcompat-v7:23.2.0'
    compile 'com.android.support:recyclerview-v7:23.2.0'
    compile 'com.android.support:cardview-v7:23.2.0'
    compile 'com.android.support:design:23.2.0'
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.google.android.gms:play-services-base:8.4.0'
    compile 'com.google.android.gms:play-services-location:8.4.0'
    compile 'com.google.android.gms:play-services-analytics:8.4.0'
    compile 'com.google.android.gms:play-services-maps:8.4.0'
    compile 'com.google.android.gms:play-services-ads:8.4.0'
    compile 'com.googlecode.libphonenumber:libphonenumber:7.0.5'
    compile 'com.facebook.android:facebook-android-sdk:4.1.1'
    compile 'de.greenrobot:eventbus:2.4.0'
    compile 'com.viewpagerindicator:library:[email protected]'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.squareup:pollexor:2.0.2'
    compile 'com.makeramen:roundedimageview:2.1.0'
    compile 'com.mcxiaoke.volley:library:[email protected]'
    compile files('libs/now-auth-api.jar')
    compile 'com.jakewharton:butterknife:5.1.2'
    compile 'com.github.ksoichiro:android-observablescrollview:1.2.0'
    compile 'io.card:android-sdk:5.3.0'
    compile 'com.appboy:android-sdk-ui:1.10.3'
    testCompile 'junit:junit:4.11'
    testCompile('org.mockito:mockito-core:1.9.5') {
        exclude group: 'org.hamcrest'
    }
    testCompile('org.powermock:powermock-module-junit4:1.5') {
        exclude group: 'org.hamcrest'
    }
    testCompile('org.powermock:powermock-api-mockito:1.6.2') {
        exclude group: 'org.hamcrest'
    }

    compile 'me.grantland:autofittextview:0.2.1'

}

如果我 minifyEnabled true 删除 minifyEnabled true 我似乎能够使我的发布版本正常工作。 为什么会这样,有另一种解决方法


不需要MULTIDEX,我重复,不需要为MULTIDEX

让我详细说明:Multidex基本上是Android附带的工具,如果将其设置为true,那么具有> 64,000种方法的应用程序可以使用略微改变的构建过程进行编译。 但是,如果您的错误如下所示,则只需使用multidex:

写输出有问题:字段引用太多:131000; max是65536.您可以尝试使用--multi-dex选项。

或者像这样

转换为Dalvik格式失败:无法执行dex:方法ID不在[0,0xffff]:65536中

但这 不是 这里的情况! 这里的问题(至少对我来说)是由build.gradle文件的依赖项引起的。

解决方案: 利用特定的依赖关系 - 不要只导入整个依赖关系部分!

例如,如果您需要位置的Play服务依赖项,则只导入 位置。

做:

compile 'com.google.android.gms:play-services-location:11.0.4'

别:

compile 'com.google.android.gms:play-services'

可能导致此问题的另一个问题可能是您正在使用的某种外部库,即引用依赖项的先前版本。 在这种情况下请遵循以下步骤:

  1. 转到SDK管理器,并安装对依赖项的任何更新
  2. 确保build.gradle文件显示最新版本。 要获取最新版本,请使用以下链接: https://developers.google.com/android/guides/setuphttps://developers.google.com/android/guides/setup
  3. 编辑您的库(或安装更新版本,如果存在),以引用最新版本

我知道这个问题很老,但我 需要 在那里得到这个答案,因为无缘无故地使用multidex可能会导致你的应用程序出现ANR! 如果您确定需要它,请仅使用multidex,并且您了解它是什么。

我自己花了好几个小时试图在没有multidex的情况下解决这个问题,我只想分享我的发现 - 希望这会有所帮助


  1. 删除gradle中的jar文件
  2. 同步它
  3. 复制该jar并同步它

这对我有用。


因此,通过添加multiDexEnabled标志无法解决我的问题。 它实际上是在收到错误消息之前。

为我解决错误的原因是确保我使用的是所有播放服务库的相同版本。 在一个库中我有11.8.0但在应用程序中使用了我使用11.6.0的库,这种差异是导致错误消息的原因。

因此,不要将您的库更改为特定版本(如之前的答案),也许您想要检查您是否使用相同版本,因为Android Studio会通过警告明确阻止混合版本。


在DefaultConfig中添加 multiDexEnabled = true

    defaultConfig {
    applicationId "com.test"
    minSdkVersion 16
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
    multiDexEnabled = true
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

在我完成所有这些之后,我真的不知道怎么了,但是虫子消失了:

1

删除 implementation 'com.google.android.gms:play-services:12.0.1'

并添加

implementation 'com.google.android.gms:play-services-location:12.0.1'
implementation 'com.google.android.gms:play-services-maps:12.0.1'
implementation 'com.google.android.gms:play-services-places:12.0.1'

2

更新git,jdk,更改Project结构中的JDK位置

3

删除项目中的构建文件夹

4

清理并重建项目


如果您在更新Google Play服务9.8.0后遇到问题,请将此添加到您的依赖项:

`dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.google.firebase:firebase-messaging:9.8.0'
compile 'com.google.android.gms:play-services-maps:9.8.0'
compile 'com.google.android.gms:play-services-location:9.8.0'
compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.google.firebase:firebase-auth:9.8.0'
compile 'com.google.firebase:firebase-crash:9.8.0'
compile 'com.google.maps.android:android-maps-utils:0.4.4'
compile 'com.google.android.gms:play-services-appindexing:9.8.0'

}

我修好了我添加到我的 项目 > app > libs android volley.jar,我的问题解决了


我已将jdk更新为1.8.0_74,Android-studio更新为2.1预览1并添加到应用程序文件

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

这些答案都不适合我。 我正在使用Android studio 3.4.1。

我能够构建项目,但Android工作室在我将其部署到移动设备时显示此错误。 事实证明这是“即时运行”故障。

请遵循以下答案: https://.com/a/42695197/3197467 : https://.com/a/42695197/3197467


这发生在我身上,甚至在调试版本上,只是清除了所有模块级别和项目级别的构建文件夹,它工作,是的就是这样。


在应用程序级别 gradle 中的defaultConfig中添加 multiDexEnabled true

defaultConfig {
    applicationId "your application id"
    minSdkVersion 16
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner"android.support.test.runner.AndroidJUnitRunner"
    multiDexEnabled true
}

好吧,我相信这个问题得到了回答并被接受了。 但是我要写下我面对的以及我是如何解决的。

我确实收到了同样的错误:

错误:任务':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:进程'命令'C:\ Program Files \ Java \ jdk1.8.0_60 \ bin \ java.exe''以非零退出值1结束

我不幸应用所有设置并获得成功。 但是当我尝试再次调试项目时。 这次我得到三个错误(包括上面):

错误:Java HotSpot(TM)64位服务器VM警告:CodeCache已满。 编译器已被禁用。

错误:Java HotSpot(TM)64位服务器VM警告:尝试使用-XX增加代码缓存大小:ReservedCodeCacheSize =

那我做了什么? 我只是去Android Studio:

文件>无效缓存/重新启动..>无效和重新启动

快速解决!

额外注意:

我在Gradle控制台中找到的内容:

:app:incrementalDebugTasks:app:prePackageMarkerForDebug:app:fastDeployDebugExtractor:app:generateDebugInstantRunAppInfo:app:transformClassesWithDexForDebug要在进程中运行dex,Gradle守护程序需要更大的堆。 它目前有大约910 MB。 要加快构建速度,请将Gradle守护程序的最大堆大小增加到2048 MB以上。 为此,请在项目gradle.properties中设置org.gradle.jvmargs = -Xmx2048M。 有关更多信息,请参阅 https://docs.gradle.org/current/userguide/build_environment.html FAILED

阅读更多相关内容在Oracle博客上


它只对我使用特定的服务。

例如,而不是使用:

compile 'com.google.android.gms:play-services:10.0.1'

我用了:

com.google.android.gms:play-services-places:10.0.1


对我来说,从我的项目中删除 jar 文件后,问题就 解决了 。 似乎我的项目中的一个 jar 文件使用的是较旧版本的 google play services


我修复了这个代码。

local.properties

org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m

你应该在gradle上做这个改变

defaultConfig {
    applicationId "yourProjectPackage"
    minSdkVersion 15
    versionCode 1
    versionName "1.0"
    targetSdkVersion 23

    multiDexEnabled true //important
}

我刚把这段代码写入gradle.properties,现在还可以

org.gradle.jvmargs=-XX:MaxHeapSize\=2048m -Xmx2048m

我的应用程序中遇到了类似的问题。 这就是我做的。

1.在模块:app中为build.gradle添加此内容

multiDexEnabled = true

所以代码就像:

    android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.example..."
        minSdkVersion 17
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        multiDexEnabled = true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

这对我有用。 希望这对你有帮助:)

在同一个项目中我也使用了 Firebase 。 因此启用multiDexEnabled可以解决Firebase for Pre Lollipop设备中的 另一个问题。 某些FireBase类未被识别。 ( 无法获得提供商com.google.firebase.provider )。
解决这个问题的方法在 here. 解释 here.


我知道这是一个古老的问题,但仍然存在。 每次发生这种情况,都是因为我已经包含了所有的播放服务库。 只需在build.gradle(模块)文件中将play-services:xxx更改为play-service-:xxx即可


更新到Android 3.4后,我开始收到错误,尝试了以上所有解决方案。

问题的根本原因是,更新Android Studio 启用了即时运行

因此,您可以尝试的其中一个解决方案是禁用即时运行,如果它已启用,则解决了我的问题。


我对最新的AndroidStudio(3.2 B1)有随机问题,并尝试了上述所有解决方案。 我通过禁用“构建类型”中的“Zip Align Enabled”选项来实现它





gradlew