mavenProject,今天混淆之后mvn deploy的jar包启动报错:
Exception in thread "main" java.lang.VerifyError: Expecting a stackmap frame at branch target 55
Exception Details:
Location:
sophia/foundation/property/symbol/JavaPropertySymbol.<init>(Ljava/lang/Short;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V @44: ifeq
Reason:
Expected stackmap frame at this location.
Bytecode:
0000000: 2ab7 002e 2a2b b500 282a 2cb5 0029 2a2d
0000010: b500 2a2a 1904 b500 2b2a 1905 b500 2c2a
0000020: 1906 b500 2d12 0b19 06b6 002f 9900 0b2a
0000030: b200 20b5 0027 b112 0819 06b6 002f 9900
0000040: 0b2a b200 26b5 0027 b112 0919 06b6 002f
0000050: 9900 0b2a b200 24b5 0027 b112 0a19 06b6
0000060: 002f 9900 0b2a b200 25b5 0027 b112 0619
0000070: 06b6 002f 9900 0b2a b200 23b5 0027 b112
0000080: 0719 06b6 002f 9900 0b2a b200 22b5 0027
0000090: b112 0219 06b6 002f 9a00 0d12 0319 06b6
00000a0: 002f 9900 0b2a b200 21b5 0027 b112 0d19
00000b0: 06b6 002f 9900 0a2a 1218 b500 27b1 1201
00000c0: 1906 b600 2f99 000a 2a12 0eb5 0027 b112
00000d0: 0419 06b6 002f 9900 0a2a 1219 b500 27b1
00000e0: 120c 1906 b600 2f99 000a 2a12 1ab5 0027
00000f0: b112 0519 06b6 002f 9900 092a 121b b500
0000100: 27b1
pom文件配置:
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>2.0.7</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
</execution>
</executions>
<configuration>
<target>1.7</target>
<source>1.7</source>
<encoding>UTF-8</encoding>
<proguardInclude>${basedir}/proguard.conf</proguardInclude>
<!--不压缩,不优化,保留jar包directory entry,保留注解 -->
<options>
<option>-ignorewarnings</option>
<option>-dontshrink</option>
<option>-dontoptimize</option>
<option>-dontskipnonpubliclibraryclasses</option>
<option>-dontskipnonpubliclibraryclassmembers</option>
</options>
<libs>
<lib>${java.home}/lib/rt.jar</lib>
</libs>
</configuration>
<dependencies>
<!-- 使用4.9版本来混淆 -->
<dependency>
<groupId>net.sf.proguard</groupId>
<artifactId>proguard-base</artifactId>
<version>4.9</version>
<scope>runtime</scope>
</dependency>
</dependencies>
</plugin>
</plugins>
http://blog.csdn.net/pltuyuhong/article/details/50971734
去掉需要参数: -dontpreverify