Kotlin / anko

Pleasant Android application development
Apache License 2.0
15.88k stars 1.29k forks source link

Getting Proguard exception - IllegalArgumentException Stack size becomes negative #721

Open harshmittal29 opened 5 years ago

harshmittal29 commented 5 years ago

While making Release apk I am getting following exception. Please help

Unexpected error while computing stack sizes:
  Class       = [org/jetbrains/anko/Logging]
  Method      = [error(Lorg/jetbrains/anko/AnkoLogger;Lkotlin/jvm/functions/Function0;)V]
  Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative after instruction [50] pop in [org/jetbrains/anko/Logging.error(Lorg/jetbrains/anko/AnkoLogger;Lkotlin/jvm/functions/Function0;)V])
Unexpected error while inlining method:
  Target class   = [org/jetbrains/anko/Logging]
  Target method  = [error(Lorg/jetbrains/anko/AnkoLogger;Lkotlin/jvm/functions/Function0;)V]
  Exception      = [java.lang.IllegalArgumentException] (Stack size becomes negative after instruction [50] pop in [org/jetbrains/anko/Logging.error(Lorg/jetbrains/anko/AnkoLogger;Lkotlin/jvm/functions/Function0;)V])
java.lang.IllegalArgumentException: Stack size becomes negative after instruction [50] pop in [org/jetbrains/anko/Logging.error(Lorg/jetbrains/anko/AnkoLogger;Lkotlin/jvm/functions/Function0;)V]
        at proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:349)
        at proguard.classfile.attribute.visitor.StackSizeComputer.visitBranchInstruction(StackSizeComputer.java:207)
        at proguard.classfile.instruction.BranchInstruction.accept(BranchInstruction.java:145)
        at proguard.classfile.attribute.visitor.StackSizeComputer.evaluateInstructionBlock(StackSizeComputer.java:366)
        at proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute0(StackSizeComputer.java:163)
        at proguard.classfile.attribute.visitor.StackSizeComputer.visitCodeAttribute(StackSizeComputer.java:125)
        at proguard.optimize.peephole.MethodInliner.visitCodeAttribute0(MethodInliner.java:220)
        at proguard.optimize.peephole.MethodInliner.visitCodeAttribute(MethodInliner.java:172)
        at proguard.optimize.info.OptimizationCodeAttributeFilter.visitCodeAttribute(OptimizationCodeAttributeFilter.java:84)
        at proguard.classfile.attribute.visitor.DebugAttributeVisitor.visitCodeAttribute(DebugAttributeVisitor.java:302)
        at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:141)
        at proguard.classfile.ProgramMethod.attributesAccept(ProgramMethod.java:101)
        at proguard.classfile.attribute.visitor.AllAttributeVisitor.visitProgramMember(AllAttributeVisitor.java:95)
        at proguard.classfile.util.SimplifiedVisitor.visitProgramMethod(SimplifiedVisitor.java:93)
        at proguard.classfile.ProgramMethod.accept(ProgramMethod.java:93)
        at proguard.classfile.ProgramClass.methodsAccept(ProgramClass.java:588)
        at proguard.classfile.visitor.AllMethodVisitor.visitProgramClass(AllMethodVisitor.java:47)
        at proguard.classfile.ProgramClass.accept(ProgramClass.java:430)
        at proguard.classfile.ClassPool.classesAccept(ClassPool.java:124)
        at proguard.classfile.visitor.AllClassVisitor.visitClassPool(AllClassVisitor.java:45)
        at proguard.classfile.ClassPool.accept(ClassPool.java:110)
        at proguard.optimize.Optimizer$TimedClassPoolVisitor.visitClassPool(Optimizer.java:1684)
        at proguard.classfile.ClassPool.accept(ClassPool.java:110)
        at proguard.optimize.Optimizer.execute(Optimizer.java:1194)
        at proguard.ProGuard.optimize(ProGuard.java:413)
        at proguard.ProGuard.execute(ProGuard.java:154)
        at com.android.build.gradle.internal.transforms.BaseProguardAction.runProguard(BaseProguardAction.java:66)
        at com.android.build.gradle.internal.transforms.ProGuardTransform.doMinification(ProGuardTransform.java:274)
        at com.android.build.gradle.internal.transforms.ProGuardTransform.access$000(ProGuardTransform.java:67)
        at com.android.build.gradle.internal.transforms.ProGuardTransform$1.run(ProGuardTransform.java:178)
        at com.android.builder.tasks.Job.runTask(Job.java:47)
        at com.android.build.gradle.tasks.SimpleWorkQueue$EmptyThreadContext.runTask(SimpleWorkQueue.java:41)
        at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:282)
        at java.lang.Thread.run(Thread.java:745)
Not inlining this method
Unexpected error while computing stack sizes:
  Class       = [org/jetbrains/anko/Logging]
  Method      = [verbose(Lorg/jetbrains/anko/AnkoLogger;Ljava/lang/Object;Ljava/lang/Throwable;)V]
  Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative after instruction [65] pop in [org/jetbrains/anko/Logging.verbose(Lorg/jetbrains/anko/AnkoLogger;Ljava/lang/Object;Ljava/lang/Throwable;)V])
Unexpected error while editing code:
  Class       = [org/jetbrains/anko/Logging]
  Method      = [verbose(Lorg/jetbrains/anko/AnkoLogger;Ljava/lang/Object;Ljava/lang/Throwable;)V]
  Exception   = [java.lang.IllegalArgumentException] (Stack size becomes negative after instruction [65] pop in [org/jetbrains/anko/Logging.verbose(Lorg/jetbrains/anko/AnkoLogger;Ljava/lang/Object;Ljava/lang/Throwable;)V])
Warning: Exception while processing task java.io.IOException: java.lang.IllegalArgumentException: Stack size becomes negative after instruction [65] pop in [org/jetbrains/anko/Logging.verbose(Lorg/jetbrains/anko/AnkoLogger;Ljava/lang/Object;Ljava/lang/Throwable;)V]
Thread(Tasks limiter_3): destruction

> Task :app:transformClassesAndResourcesWithProguardForInternalRelease FAILED
:app:transformClassesAndResourcesWithProguardForInternalRelease (Thread[Task worker for ':' Thread 5,5,main]) completed. Took 29.398 secs.
DaCodeShogun commented 5 years ago

I had the same problem after upgrading to SDK 28

harshmittal29 commented 5 years ago

@DaCodeShogun Its solved here https://stackoverflow.com/questions/54397500/proguard-error-illegalargumentexception-stack-size-becomes-negative

grevolution commented 5 years ago

any update on this issue?