我正在尝试构建一个启用了proguard的发布apk.我收到以下错误.我将在下面附上完整的堆栈跟踪.
Unexpected error while evaluating instruction:
Class = [*]
Method = [myMethod(Ljava/lang/String;Ljava/util/Map;)V]
Instruction = [532] aload_3 v3
Exception = [java.lang.IllegalArgumentException] (Value is not a reference value [proguard.evaluation.value.UnknownIntegerValue])
Unexpected error while performing partial evaluation:
Class = [*]
Method = [myMethod(Ljava/lang/String;Ljava/util/Map;)V]
Exception = [java.lang.IllegalArgumentException] (Value is not a reference value [proguard.evaluation.value.UnknownIntegerValue])
:*:proguardRelease FAILED
Run Code Online (Sandbox Code Playgroud)
我已将问题缩小到堆栈跟踪中未提及的代码行.
RelativeLayout.LayoutParams relativeLayoutParams = new RelativeLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
Run Code Online (Sandbox Code Playgroud)
如果我要对此进行评论,那么proguard会毫无问题地完成.
我目前已将proguard升级到新5.0,但它没有任何效果.
有什么我做错了吗?
异常完全堆栈跟踪:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':*:proguardRelease'.
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 …Run Code Online (Sandbox Code Playgroud)