当前位置: 代码迷 >> Ruby/Rails >> Error: Unsupported java version '1.8' in line 二 of file 'proguard.conf'
  详细解决方案

Error: Unsupported java version '1.8' in line 二 of file 'proguard.conf'

热度:539   发布时间:2016-04-29 02:13:18.0
Error: Unsupported java version '1.8' in line 2 of file 'proguard.conf'

执行Maven Install打包的时候,出现以下错误信息:

[proguard] Error: Unsupported java version '1.8' in line 2 of file 'F:\Workspaces\pro-test\proguard.conf', [proguard]   included from argument number 6

这是因为在proguard.conf文件中显示的指定的Java的版本,但是net\sf\proguard\proguard\4.4\proguard-4.4.jar并不支持指定的版本,我试了一下,只支持到1.6。

根据我的分析,com.pyx4me的proguard-maven-plugin最高版本才2.0.4,支持的net.sf.proguard的proguard-base的最高版本才4.4,
所以根本不支持Java 1.7和Java 1.8。

解决方案:


改用com.github.wvengen的proguard-maven-plugin
repo地址为:http://repo1.maven.org/maven2/com/github/wvengen/proguard-maven-plugin/
完整示例如下:

            <plugin>                <groupId>com.github.wvengen</groupId>                <artifactId>proguard-maven-plugin</artifactId>                <version>2.0.10</version>                <executions>                    <execution>                        <phase>package</phase>                        <goals>                            <goal>proguard</goal>                        </goals>                    </execution>                </executions>                <configuration>                    <proguardVersion>5.2</proguardVersion>                    <obfuscate>true</obfuscate>                    <proguardInclude>${basedir}/proguard.conf</proguardInclude>                     <!-- 添加依赖,这里你可以按你的需要修改 -->                    <libs>                        <lib>${java.home}/lib/rt.jar</lib>                        <lib>E:/tomcat-8.0/lib/jsp-api.jar</lib>                        <lib>E:/tomcat-8.0/lib/servlet-api.jar</lib>                    </libs>                    <addMavenDescriptor>false</addMavenDescriptor>                    <injar>${project.build.finalName}.war</injar>                    <outjar>${project.build.finalName}-pg.war</outjar>                    <outputDirectory>${project.build.directory}</outputDirectory>                </configuration>                <dependencies>                     <!-- 使用5.2版本来混淆 -->                    <dependency>                        <groupId>net.sf.proguard</groupId>                        <artifactId>proguard-base</artifactId>                          <version>5.2</version>                        <scope>runtime</scope>                    </dependency>                </dependencies>            </plugin>
  相关解决方案