Android - 오류:':app:transformClassesWithDexForRelease' 작업을 실행하지 못했습니다.
문제는 변경할 때 앱을 실행할 수 있다는 것입니다.debug합니다.releasemode.mode.modice_1
예외:
**FAILURE: Build failed with an exception.**
> Execution failed for task ':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: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
스택 추적과 함께 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: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
*Exception is:*
>org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithDexForRelease'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:154)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:78)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:48)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: 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: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at com.android.builder.profile.Recorder$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)
at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:173)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:244)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:220)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:231)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:209)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 68 more
Caused by: 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: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:422)
at com.android.build.gradle.internal.pipeline.TransformTask$3.call(TransformTask.java:178)
at com.android.build.gradle.internal.pipeline.TransformTask$3.call(TransformTask.java:174)
at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55)
... 77 more
Caused by: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at com.android.builder.core.AndroidBuilder.runDexer(AndroidBuilder.java:1472)
at com.android.builder.core.AndroidBuilder.convertByteCode(AndroidBuilder.java:1389)
at com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:250)
... 80 more
Caused by: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at com.android.builder.core.AndroidBuilder.runDexer(AndroidBuilder.java:1456)
... 82 more
Caused by: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at com.android.build.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)
Caused by: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:367)
at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:41)
... 2 more
사용 중
- 안드로이드 스튜디오 2.0 베타 6
- Java 버전: Java(TM) SE 런타임 환경(빌드 1.8.0_73-b02)
- Gradle 버전: com.android.tools.build:그레이들:2.0.0-tw6
- 멀티덱스가 활성화되어 있습니다.
내 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:2.4.1@aar'
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:1.0.16@aar'
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그것으로부터.그럴까요, 요?
저는 이 코드만 고쳤습니다.
local.properties
org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m
그리고 당신은 이 변화를 그라들에 맞춰서 해야 합니다.
defaultConfig {
applicationId "yourProjectPackage"
minSdkVersion 15
versionCode 1
versionName "1.0"
targetSdkVersion 23
multiDexEnabled true //important
}
만약 당신이 만든다면,multiDexEnabled = true앱의 defaultConfig에서 원하는 결과를 얻을 수 있습니다.
defaultConfig {
minSdkVersion 14
targetSdkVersion 22
multiDexEnabled = true
}
저는 제거한 후에 문제가 해결되었습니다.jar내 프로젝트의 파일입니다.그 중 한 명이jar의 파일들은 버전의 젝트파이버전전의이를 하고 있었습니다.google play services.
저도 같은 오류를 받았습니다.
오류: ':app:transformClassesWithDexForDebug'.com.android 작업에 대해 실행하지 못했습니다.build.api.vmdk.변환예외: java.lang.런타임예외: com.android.ide.common.process.과정예외: java.util.concurrent.실행예외: com.android.ide.common.process.과정예외: org.gradle.process.내부의.Exec 예외:프로세스 '명령 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe' 종료 값이 0이 아닌 종료 값 1로 완료되었습니다.
다음 단계의 도움을 받아 이 문제를 해결했습니다.
앱의 build.gradle(프로젝트 루트에 있는 것이 아님)을 열고 다음을 추가합니다.
android { //snippet //add this into your existing 'android' block dexOptions { javaMaxHeapSize "4g" } //snip }빌드를 다시 시도합니다.
참고: 4g는 4기가바이트이며 인덱스 작업을 위한 최대 힙 크기입니다.
멀티덱스 불필요, 반복합니다. 멀티덱스 불필요
자세히 설명하겠습니다.멀티덱스는 기본적으로 Android와 함께 제공되는 도구이며, 이를 true로 설정하면 64,000개 이상의 메서드를 가진 앱은 약간 변경된 빌드 프로세스를 사용하여 컴파일할 수 있습니다.그러나 오류가 다음과 같은 경우에만 다중 인덱스를 사용하면 됩니다.
출력 쓰기 문제:필드 참조가 너무 많습니다. 131000, 최대값은 65536입니다.--multi-dex 옵션을 사용할 수 있습니다.
아니면 이렇게
Dalvik 형식으로 변환하지 못했습니다.덱스를 실행할 수 없음: 메서드 ID가 [0,0xffff]에 없음: 65536
하지만 여기서는 그렇지 않습니다!여기서 문제는 (적어도 나에게는) 당신의 build.gradle 파일의 종속성 때문입니다.
솔루션: 특정 종속성을 활용합니다. 종속성의 전체 섹션을 가져올 필요가 없습니다.
예를 들어 위치에 대해 Play Services 종속성이 필요한 경우 위치에 대해서만 가져오십시오.
실행:
compile 'com.google.android.gms:play-services-location:11.0.4'
하지 마:
compile 'com.google.android.gms:play-services'
이 문제의 원인이 되는 또 다른 문제는 사용 중인 외부 라이브러리, 즉 종속성의 이전 버전을 참조하는 것일 수 있습니다.이 경우 다음 단계를 수행합니다.
- SDK 관리자로 이동하여 종속성에 대한 업데이트를 설치합니다.
- build.gradle 파일에 최신 버전이 표시되는지 확인합니다.최신 버전을 얻으려면 다음 링크를 사용하십시오. https://developers.google.com/android/guides/setup
- 라이브러리를 편집하거나 최신 버전을 참조하도록 업데이트된 버전 설치
이 질문이 오래된 질문인 것은 알지만, 이유 없이 멀티덱스를 사용하면 잠재적으로 앱의 ANR이 발생할 수 있기 때문에 이 답변을 공개해야 합니다.멀티덱스가 필요하고 무엇인지 이해할 수 있는 경우에만 멀티덱스를 사용하십시오.
저 자신도 멀티덱스 없이 이 문제를 해결하기 위해 몇 시간을 보냈습니다. 제 연구 결과를 공유하고 싶었습니다. 도움이 되길 바랍니다.
더하다multiDexEnabled 앱 수준의 defaultConfig에서 true입니다.gradle.
defaultConfig {
applicationId "your application id"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner"android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
제 앱에도 비슷한 문제가 있었습니다.여기 제가 한 일이 있습니다.
의 build합니다.모듈: 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를 활성화하면 Pre 롤리팝 장치의 Firebase에 또 다른 문제가 발생합니다.일부 FireBase 클래스가 식별되지 않았습니다.(제공자 com.google을 가져올 수 없습니다.화기 기지(fire-base.fire).
해결 방법은 여기에 설명되어 있습니다.
Google Play 서비스를 7.5에서 9.0으로 업그레이드할 때 이 오류가 발생했습니다.
다음 중 하나에 오류가 있습니다.
compile 'com.google.android.gms:play-services:9.0.0'
로 변경했을 때
compile 'com.google.android.gms:play-services:7.5.0'
오류가 없습니다.사용해 보세요.
Android 3.4로 업데이트한 후 오류가 발생하기 시작하여 위의 모든 솔루션을 사용해 보았습니다.
문제의 근본 원인은 Android Studio를 업데이트하여 Instant Run을 활성화했기 때문입니다.
따라서 사용자가 시도할 수 있는 해결책 중 하나는 인스턴트 실행 비활성화입니다. 사용자가 사용할 수 있는 경우 문제를 해결했습니다.
글쎄요, 저는 그 질문이 이미 답이 되었고 이미 받아들여졌다고 생각합니다.하지만 저는 제가 직면한 것과 그것을 어떻게 해결했는지를 쓸 것입니다.
저도 같은 오류를 받았습니다.
오류: ':app:transformClassesWithDexForDebug'.com.android 작업에 대해 실행하지 못했습니다.build.api.vmdk.변환예외: java.lang.런타임예외: com.android.ide.common.process.과정예외: java.util.concurrent.실행예외: com.android.ide.common.process.과정예외: org.gradle.process.내부의.Exec 예외:프로세스 '명령 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe' 종료 값이 0이 아닌 종료 값 1로 완료되었습니다.
저는 운 좋게도 모든 설정을 적용하지 못했고 성공했습니다.하지만 제가 프로젝트를 다시 디버깅하려고 했을 때.이번에는 세 가지 오류가 발생했습니다(위 내용 포함).
오류: Java HotSpot(TM) 64비트 서버 VM 주의: CodeCache가 가득 찼습니다.컴파일러를 사용할 수 없습니다.
그리고.
오류: Java HotSpot(TM) 64비트 서버 VM 주의:-XX를 사용하여 코드 캐시 크기를 늘려 보십시오.예약된 코드 캐시 크기=
그래서 내가 뭘 했습니까?Android Studio로 이동합니다.
파일 > 캐시 무효화 / 재시작..> 무효화 및 재시작
빠른 수정!
추가 참고:
Gradle Console에서 찾은 내용:
:app:incrementalDebugTasks:app:prePackageMarkerForDebug:app:fastDeployDebugExtractor:app:generateDebugInfo:app:transformClassesWithDexForDebug 프로세스에서 덱스를 실행하려면 Gradle 데몬에 더 큰 힙이 필요합니다.현재 약 910MB가 있습니다. 더 빠른 빌드를 위해 Gradle 대몬의 최대 힙 크기를 2048MB 이상으로 늘립니다. 이 설정을 수행하려면 project gradle.properties에서 org.gradle.jvmargs=-Xmx2048M을 설정합니다.자세한 내용은 https://docs.gradle.org/current/userguide/build_environment.html :app:transformClassesWithDexForDebug Failed를 참조하십시오.
Oracle 블로그에서 자세히 알아보기
나는 방금 이 코드를 gradle.properties에 썼고 지금은 괜찮습니다.
org.gradle.jvmargs=-XX:MaxHeapSize\=2048m -Xmx2048m
- 그라들에서 jar 파일을 제거합니다.
- 동기화
- 해당 병을 복사하여 동기화합니다.
이것은 저에게 효과가 있었습니다.
그것은 특정 서비스를 사용하는 것만으로 저에게 효과가 있었습니다.
예를 들어 다음과 같이 사용할 수 있습니다.
compile 'com.google.android.gms:play-services:10.0.1'
사용:
com.google.android.gms:play-services-places:10.0.1
솔 1: 인build.gradle:
defaultConfig {
multiDexEnabled true
}
프로젝트를 정리하고 다시 빌드합니다.
솔루션 2: 인local.properties더하다,
org.gradle.jvmargs=-XX\:MaxHeapSize\=512m -Xmx512m
솔 3
compile 'com.android.support:multidex:1.0.1'
그렇지 않으면 응용프로그램에 3개를 모두 추가합니다.
좀 오래된 질문인 건 알지만, 여전히.이런 일이 저에게 일어날 때마다, 그것은 제가 모든 놀이 서비스 라이브러리를 포함했기 때문입니다.build.gradle(모듈) 파일에서 play-services:x.x를 play-service-:x.x.x로 변경하기만 하면 됩니다.
multiDexEnabled를 true로 설정하는 것만으로도 정상적으로 작동했습니다.
defaultConfig
{
multiDexEnabled true
}
저도 같은 문제가 있었습니다.어느 날 프로그램이 완벽하게 작동했지만 다음은 작동하지 않았습니다.나는 Github에서 내가 변경한 사항을 확인했습니다.저에게 문제는 종속성에 있는 build.gradle(모듈:app)에 있었습니다.
compile 'com.android.tools.build:gradle:2.1.2'
이 선이 문제의 원인이었습니다.변경 후 앱이 다시 정상적으로 실행되었습니다.
jdk를 1.8.0_74로, Android-studio를 2.1 미리보기 1로 업데이트하고 애플리케이션 파일에 추가했습니다.
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
당신의 에 이 하세요.build.gradle
defaultConfig {
............
aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
compileOptions.encoding = 'ISO-8859-1'
multiDexEnabled true
}
DefaultConfig Add multiDexEnabled = true
defaultConfig {
applicationId "com.test"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
multiDexEnabled = true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
그래서 multiDexEnabled 플래그를 추가해도 내 것은 해결되지 않았습니다.오류 메시지를 받기 전에 실제로 있었습니다.
오류를 해결한 것은 모든 플레이 서비스 라이브러리의 동일한 버전을 사용하고 있는지 확인하는 것이었습니다.한 라이브러리에서 나는 11.8.0을 가지고 있었지만 라이브러리를 소비하는 앱에서는 11.6.0을 사용하고 있었고 그 차이가 오류 메시지의 원인이었습니다.
따라서 라이브러리를 이전 답변과 같은 특정 버전으로 변경하는 대신 Android Studio에서 경고로 인해 혼합 버전을 사용하지 않도록 명시적으로 권장하기 때문에 동일한 버전을 전체적으로 사용하고 있는지 확인하는 것이 좋습니다.
많은 노력 끝에 자격증 이하를 추가했고 성공했습니다.
app-> 'proguard-rules.pro ' 파일
-ignorewarnings
-keep class * {
public private *;
}
그리고 app -> build.gradle 파일에도 추가되었습니다.
android {
...........................
defaultConfig {
..................
multiDexEnabled true
}
buildTypes {
debug {
minifyEnabled true
useProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
innerTest {
matchingFallbacks = ['debug', 'release']
}
}
...................................................
}
dependencies {
..................................
implementation 'com.android.support:multidex:1.0.2'
}
기본적으로 Android Studio의 최대 힙 크기는 1280MB입니다.대규모 프로젝트를 수행 중이거나 시스템에 RAM이 많은 경우 코어 IDE, Gradle 데몬 및 Kotlin 데몬과 같은 Android Studio 프로세스의 최대 힙 크기를 늘려 성능을 향상시킬 수 있습니다.
RAM이 5GB 이상인 64비트 시스템을 사용하는 경우 프로젝트의 힙 크기를 수동으로 조정할 수도 있습니다.이렇게 하려면 다음 단계를 수행합니다.
메뉴바(또는 macOS에서는 Android Studio > Preferences)에서 File > Settings를 클릭합니다.모양 & 동작 > 시스템 설정 > 메모리 설정을 클릭합니다.
자세한 내용은 다음을 클릭하십시오.
https://developer.android.com/studio/intro/studio-config
그냥 그라들(모듈 앱)의 구글 플레이 서비스를 9.x.x에서 하위 버전 8.4.0으로 변경하는 것이 저에게는 좋습니다.
나는 내 프로젝트에 추가한 내 것을 고쳤고 > 앱 > libs 안드로이드 발리.jar 그리고 내 문제는 해결되었습니다.
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'
}
디버그 빌드에서도 이 문제가 발생하여 모듈 레벨과 프로젝트 레벨 빌드 폴더를 모두 지웠으며 바로 그렇게 작동했습니다.
VS-TACO를 계속 사용하고 있으며 이 문제가 있는 사용자를 위한 것입니다.이 문제는 jar 파일의 버전 불일치로 인해 발생합니다.
여전히 다음에 수정 사항을 추가해야 합니다.build.gradle줄을 지어 들어가다platforms\android폴더:
defaultConfig {
multiDexEnabled true
}
dependencies {
compile 'com.android.support:multidex:1.0.3'
}
에서 하는 것이 좋습니다.build-extras.gradle파일(build.gradle 파일에 자동으로 연결됨)과 다른 모든 변경사항이 있는 경우 모두 삭제합니다.platforms/android폴더, 그러나 거기에만 남깁니다.build-extras.gradle파일입니다. 그럼 컴파일만 하세요.
이 대답들 중 어떤 것도 저에게 효과가 없었습니다.저는 안드로이드 스튜디오 3.4.1을 사용하고 있습니다.
저는 프로젝트를 구축할 수 있었지만 안드로이드 스튜디오는 모바일 기기에 배포하려고 할 때 이 오류를 보여주었습니다.이는 "즉시 실행" 결함인 것으로 밝혀졌습니다.
다음 답변을 따르십시오. https://stackoverflow.com/a/42695197/3197467
어떻게 했는지는 모르겠지만 제가 이 모든 것을 한 후에 버그가 사라졌습니다.
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 업데이트, 프로젝트 구조에서 JDK 위치 변경
3
내 프로젝트에서 빌드 폴더 삭제
4
프로젝트 정리 및 재구축
언급URL : https://stackoverflow.com/questions/35890257/android-errorexecution-failed-for-task-apptransformclasseswithdexforrelease
'programing' 카테고리의 다른 글
| Jquery - Ajax jSON 응답을 변수로 저장 (0) | 2023.09.02 |
|---|---|
| Powershell을 사용하여 VPN에 연결 (0) | 2023.09.02 |
| Android SDK 위치 (0) | 2023.09.02 |
| 바닐라 Javascript를 사용하여 HTML 테이블을 CSV로 내보내기 (0) | 2023.09.02 |
| MySQL의 저장 프로시저 내에 선택적 매개 변수를 작성하시겠습니까? (0) | 2023.09.02 |
