proguard.ParseException: Unknown option '-keepdirectories' in line 57 of file
2015-05-08 12:20
260 查看
问题场景
在使用Maven + Proguard打包项目进行混淆时,提示以下错误:[proguard] proguard.ParseException: Unknown option ‘-keepdirectories’ in line 57 of file ‘F:\Workspaces\middle\trunk\proguard.conf’,
[proguard] included from argument number 4
[proguard] at proguard.ConfigurationParser.parse(ConfigurationParser.java:164)
[proguard] at proguard.ProGuard.main(ProGuard.java:491)
Pom配置
<plugin> <groupId>com.pyx4me</groupId> <artifactId>proguard-maven-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>proguard</goal> </goals> </execution> </executions> <configuration> <obfuscate>true</obfuscate> <proguardInclude>${basedir}/proguard.conf</proguardInclude> <!-- 添加依赖,这里你可以按你的需要修改 --> <libs> <lib>${java.home}/lib/rt.jar</lib> <lib>lib/jsp-api.jar</lib> <lib>lib/servlet-api.jar</lib> </libs> <addMavenDescriptor>false</addMavenDescriptor> </configuration> </plugin>
问题分析
似乎是proguard-maven-plugin本身并不支持’-keepdirectories’选项!解决方案
如果要支持该选项,需要添加依赖,使用其它版本的proguard<dependencies> <!-- 使用4.4版本来混淆 --> <dependency> <groupId>net.sf.proguard</groupId> <artifactId>proguard</artifactId> <version>4.4</version> <scope>runtime</scope> </dependency> </dependencies>
注意,这里使用4.4版本的,有文章中使用4.8版本来混淆,但是在Maven的仓库中http://repo1.maven.org/maven2/net/sf/proguard/proguard/
找不到4.8的版本。
相关文章推荐
- Error: Unsupported java version '1.8' in line 2 of file 'proguard.conf'
- n unhandled exception of type 'System.IO.FileNotFoundException' occurred in Unknown Module.Additional information: 未能加载文件或程序集“..
- Error: C3065E: type of input file 'XXX' unknown——已解决!
- centos 安装mysql时错误unknown variable 'defaults-file=/opt/redmine-2.6.0-2/mysql/my.cnf'
- Unknown type &#39;246 in column 3 of 5 in binary-encoded result set
- malformed or corrupted AST file。。。module file out of date'
- nested exception is java.sql.SQLException: Unknown type '246 in column 1 of 3 in binary-encoded result set. 问题
- warning: no rule to process file 'h' of type sourcecode.c.h for architecture i386
- 【Android】 Eclipse : ERROR: Unknown option '--no-crunch'的解决办法
- Linux挂载U盘:mount: unknown filesystem type 'ntfs'
- linux-mount: unknown filesystem type 'smbfs'解决方法记录
- fatal error C1853: 'Debug\***.pch' precompiled header file is from a previous version of the compil
- centos 安装mysql时错误unknown variable 'defaults-file=/opt/redmine-2.6.0-2/mysql/my.cnf'
- unknown variable 'defaults-file=/opt/redmine-2.6.0-2/mysql/my.cnf'解决方法
- 挂载LVM卷,提示mount: unknown filesystem type 'LVM2_member'的解决
- filegroup reference and partitioning scheme' is not supported in this version of sql server.
- virtualbox挂载时出现 mount: unknown filesystem type 'vboxsf' 的解决办法
- malformed or corrupted AST file。。。module file out of date'
- java.sql.SQLException: Unknown type '246 in column 0 of 1 in binary-encoded result set的解决办法
- Unknown column 'filevalue' in 'field list'