IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]Error: Unsupported java version \'1.8\' in line 2 of file \'proguard.conf\'

    testcs_dn发表于 2015-05-10 17:08:59
    love 0

    执行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>


沪ICP备19023445号-2号
友情链接