ClassFormatError after optimizing the Proguard (no obfuscation) application included in Guice

I have an application included in Guice that works fine, but when I optimize it (i.e. reduce the size) using Proguard, I get the following error message (I catch it using the exception handler):

java.lang.ClassFormatError: LVTT entry for 'that' in class file
com/google/inject/internal/util/$ImmutableList$RegularImmutableList
does not match any LVT entry

This prevents the application from working properly. I am not confusing the code.

Does anyone know what is going on? Is there a solution / workaround?

Thank.

+3
source share
2 answers

ProGuard , , . ProGuard /, , , , , /.

/, ProGuard. .

, , , , , , . , , - . , - , ?

+1

, , ProGuard 4.6 .

(# 3161222), LocalVariableTable LocalVariableTypeTable. , :

  • (javac -g: lines, source)
  • ( -dontobfuscate, -keepattributes LocalVariableTable, LocalVariableTypeTable)
  • (-dontoptimize).

, , .

+4

All Articles