问题是,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
Run Code Online (Sandbox Code Playgroud)
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) .api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)在org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)在org.gradle.api.internal .tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)在org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)在org.gradle.api.internal.tasks.execution .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.AbstractTaskPlanExecutor $ TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)在org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)在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)一:23)在org.gradle.execution.DefaultBuildExecuter $ 1.proceed(在org.gradle.execution.DefaultBuildExecuter.execute DefaultBuildExecuter.java:43)在org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)( DefaultBuildExecuter.java:37)在org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)在org.gradle.initialization.DefaultGradleLauncher $ 4.run(DefaultGradleLauncher.java:154)在org.gradle.internal.Factories $ 1 .create(Factories.java:22)在org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)在org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52)在有机gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151)在org.gradle.initialization.DefaultGradleLauncher.access $ 200(DefaultGradleLauncher.java:32)在org.gradle.initialization.DefaultGradleLauncher $ 1,创建(DefaultGradleLauncher.java:99)在组织.gradle.initialization.DefaultGradleLauncher $ 1.创建(DefaultGradleLauncher.java:93)在org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)在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)在组织.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)在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.exec.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)在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 $ …
我使用作为工具一部分提供的新项目模板在Android Studio中构建了一个新项目.所有代码都是由Studio生成的,我还没有做任何修改.
我试图运行代码,但应用程序失败并出现以下错误,不确定问题是什么,所以任何帮助表示赞赏.
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v7/app/ActionBar$Callback;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
at com.android.dx.command.dexer.Main.run(Main.java:230)
at com.android.dx.command.dexer.Main.main(Main.java:199)
at com.android.dx.command.Main.main(Main.java:103)
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
C:\Users\RichardKavanagh\AppData\Local\Android\android-sdk\build-tools\19.0.1\dx.bat --dex --output D:\Android\Projects\MyHealthRecord\app\build\libs\app-debug.dex D:\Android\Projects\MyHealthRecord\app\build\classes\debug D:\Android\Projects\MyHealthRecord\app\build\dependency-cache\debug D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\android-support-v7-appcompat-5a78dab7e2789bbe64f4bc80d106ca75c04dcf6f.jar D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\classes-f9b947272e9f33ba50355b52d82755584f9c0c58.jar D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\support-v4-19.0.0-31a2c13df80d37d62ca50fec3bde6da0ca706223.jar
Error Code:
2
Output:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v7/app/ActionBar$Callback;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) …Run Code Online (Sandbox Code Playgroud) 看起来我正在调用65K的dex限制,如果我写一些新的方法我有一个dex错误,如果我删除一些旧的东西,它就消失了.
有没有办法检查Android Studio中目前使用的方法数量?
我的项目有问题.我不知道如何解决它.这是我第一次遇到它.
/ UncaughtException:java.lang.NoSuchMethodError:没有静态方法getFont(Landroid/content/Context; ILandroid/util/TypedValue; ILandroid/widget/TextView;)Landroid/graphics/Typeface; 在课堂上Landroid/support/v4/content/res/ResourcesCompat; 或其超级类('android.support.v4.content.res.ResourcesCompat'的声明出现在/data/app/codes.trongtin.h.besttrip-2/split_lib_dependencies_apk.apk:classes2.dex)
我知道这是一个重复的问题,但我尝试了很多代码,但无法解决错误
Run Code Online (Sandbox Code Playgroud)Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'. com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl.class
gradle文件
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.cwish"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'com.android.support:recyclerview-v7:+'
compile 'com.android.support:recyclerview-v7:23.1.0@aar'
compile 'com.daimajia.numberprogressbar:library:1.2@aar'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.koushikdutta.ion:ion:2.+'
}
Run Code Online (Sandbox Code Playgroud) 我试图在工作室中运行我的代码,但不断收到此错误: -
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformClassesWithInstantRunForDebug'.
> Unexpected constructor structure.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.Run Code Online (Sandbox Code Playgroud)
我尝试了很多方法来解决这个错误,但似乎没有什么对我有用
以下是我的代码中最初出现此错误时所做的事情: -
来自FragmentActivity的片段调用: -
public void showSelectVideoFragment() {
// TODO Auto-generated method stub
if (checkCurrentSelectedBtForLeftMenu(lMenuBtUploadVideoWRAP)) {
return;
}
setBtBackgroundForLeftMenu(lMenuBtUploadVideoWRAP);
addFragment(new SVideoFragment(mLeftMenu));
}
private void addFragment(Fragment fragment) {
if (fragmentManager != null) {
if (fragmentManager.getBackStackEntryCount() == …Run Code Online (Sandbox Code Playgroud) 我试图删除所有重复项以使其保持在 64K 限制以下(现在我有 65239,这不好,因为在这种情况下,我需要使用 multidex,这需要另一个依赖项),但我找不到有关如何从子组中删除模块的任何信息。
例如,几乎每个子依赖项都有com.android.support:support-v4:26.1.0,com.android.support:support-compat:26.1.0我需要删除它,因为com.android.support:support-v4:26.1.0根目录中已经有一个,而我需要保留这个。
// 更新:以下线程gradle - 依赖项中的库重复讨论了涉及不同版本依赖项的不同问题。我没有这个问题,我使用的所有依赖项都有我需要的版本。
我需要删除所有标记为的模块(*)
+--- com.android.support:appcompat-v7:26.1.0
| +--- com.android.support:support-annotations:26.1.0
| +--- com.android.support:support-v4:26.1.0
| | +--- com.android.support:support-compat:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0
| | | \--- android.arch.lifecycle:runtime:1.0.0 -> 1.0.3
| | | +--- android.arch.lifecycle:common:1.0.3
| | | | \--- com.android.support:support-annotations:26.1.0
| | | +--- android.arch.core:common:1.0.0
| | | | \--- com.android.support:support-annotations:26.1.0
| | | \--- com.android.support:support-annotations:26.1.0
| | +--- com.android.support:support-media-compat:26.1.0
| | | +--- com.android.support:support-annotations:26.1.0 …Run Code Online (Sandbox Code Playgroud) 我无法在调试和发布模式下使用 minifyEnabled true 运行 apk。我参考了下面的链接,但没有一个对我有用。
1. Android-错误:执行失败的任务“:应用程序:transformClassesWithDexForRelease”
2.将字节码转换为 dex 时出错:原因:java.lang.RuntimeException: Exception parsing classes - Android studio 2.0 beta 6
下面是应用程序 build.gradle 文件
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId 'XX.XX.XXX'
minSdkVersion 21
targetSdkVersion 23
versionCode 9
versionName "1.0"
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}
sourceSets.main {
jni.srcDirs = [] //disable automatic ndk-build call
jniLibs.srcDir 'src/main/libs' //integrate your libs from libs instead of jniLibs
}
dexOptions {
javaMaxHeapSize "4g" //specify the heap size for the …Run Code Online (Sandbox Code Playgroud) 我在我的android项目中收到此错误:
Unable to execute dex: method ID not in [0, 0xffff]: 65536
Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536
Run Code Online (Sandbox Code Playgroud)
从我的所有研究来看,这是由于我的android项目中有太多的方法 - 限制是64k.但是我运行脚本来计算当前项目中有多少,并且它提出了56k方法.这是我正在运行的脚本.
我项目的唯一补充是我已经将Parse从1.4更新到1.7.
在更新解析后构建和编译项目,但是当我尝试添加任何新代码时,会出现此错误.
我第一次遇到这个错误时,我正在使用Android Studio 0.8.9.我已经恢复到Android Studio 0.8.6并且它仍在发生.
我该如何解决这个错误
错误:任务':app:dexDebug'的执行失败.com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home/bin/java''完成非零退出值2
App Build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/ASL2.0'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/notice.txt'
}
defaultConfig {
applicationId "com.app"
minSdkVersion 10
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:22.1.1' // Do NOT use 22.2.0 even it is newer one. It reported to cause some problems with other dependencies. …Run Code Online (Sandbox Code Playgroud) java android android-studio build.gradle android-gradle-plugin
android ×7
java ×4
gradle ×3
dex ×2
build.gradle ×1
constructor ×1
encryption ×1
gradlew ×1
obfuscation ×1