2015-10-06 83 views
0

我一直在嘗試生成已簽名的apk。編譯,運行;在調試模式下一切順利,但是當我嘗試生成apk時會出現此錯誤。我認爲錯誤來自proguard。生成已簽名的apk時的TaskExecutionException異常

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':app:packageRelease'. 
> Unable to compute hash of G:\danfe workspace\ClientOneRestro\app\build\intermediates\classes-proguard\release\classes.jar 

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

* Exception is: 
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:packageRelease'. 
at  org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction s(ExecuteActionsTaskExecuter.java:69) 
at  org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46) 
at  org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execut  e(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:42) 
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.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:305) 
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79) 
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63) 
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51) 
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23) 
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:88) 
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62) 
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:68) 
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62) 
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55) 
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:149) 
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106) 
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86) 
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80) 
at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:43) 
at org.gradle.tooling.internal.provider.BuildModelAction.run(BuildModelAction.java:30) 
at org.gradle.tooling.internal.provider.ConfiguringBuildAction.run(ConfiguringBuildAction.java:119) 
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36) 
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26) 
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:47) 
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:35) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71) 
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69) 
at org.gradle.util.Swapper.swap(Swapper.java:38) 
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60) 
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:70) 
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:39) 
at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) 
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:46) 
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246) 
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64) 
Caused by: org.gradle.tooling.BuildException: Unable to compute hash of G:\danfe workspace\ClientOneRestro\app\build\intermediates\classes-proguard\release\classes.jar 
at com.android.build.gradle.tasks.PackageApplication.doFullTaskAction(PackageApplication.java:226) 
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:79) 
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63) 
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235) 
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211) 
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222) 
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:200) 
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80) 
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61) 
... 55 more 
Caused by: com.android.builder.packaging.PackagerException: Unable to compute hash of G:\danfe workspace\ClientOneRestro\app\build\intermediates\classes-proguard\release\classes.jar 
at com.android.builder.core.AndroidBuilder.packageApk(AndroidBuilder.java:1808) 
at com.android.build.gradle.tasks.PackageApplication.doFullTaskAction(PackageApplication.java:206) 
... 63 more 

我的build.gradle

apply plugin: 'com.android.application' 

buildscript { 
repositories { 
    jcenter() 
} 
dependencies { 
    classpath 'com.android.tools.build:gradle:1.3.0' 
} 
} 

android { 
compileSdkVersion 22 
buildToolsVersion "22.0.1" 

defaultConfig { 
    applicationId "com.danfe.restaurantapp" 
    minSdkVersion 11 
    targetSdkVersion 22 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     minifyEnabled true 
     proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro' 
    } 
    debug { 
     minifyEnabled true 
     proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro' 
     zipAlignEnabled true 
    } 

} 

} 


dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.android.support:appcompat-v7:22.2.1' 
compile 'de.greenrobot:greendao:2.0.0' 
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0' 
compile 'com.squareup.okhttp:okhttp:2.0.0' 
compile 'com.squareup.retrofit:retrofit:1.9.0' 
compile 'com.squareup.okio:okio:1.1.0' 
compile "com.squareup.picasso:picasso:2.4.0" 
} 

我proguard-rules.pro

-keep public class com.google.android.gms.** 
-keep class android.support.v7.** { *; } 
-keep interface android.support.v7.** { *; } 

-dontwarn android.support.v7.** 
-dontwarn org.apache.http.** 
-dontwarn android.net.http.AndroidHttpClient 
-dontwarn com.google.android.gms.** 
-dontwarn java.nio.file.Files 
-dontwarn java.nio.file.Path 
-dontwarn java.nio.file.OpenOption 
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement  
+0

你可以建立應用程序嗎? – droidev

+0

是的,我可以建立 –

+0

後ur'build.gradle' .. –

回答

0

感謝我解決我的問題,在我的proguard-rules.pro

加上幾行
-dontwarn rx.Observale.** 
-dontwarn rx.** 
-dontwarn com.squareup.okhttp.internal.huc.** 
-dontwarn com.google.appengine.api.urlfetch.** 
相關問題