proguard.ParseException: Unknown option '-keepdirectories' in line 57 of file
来源:互联网 发布:非法网络渗透罪 编辑:程序博客网 时间:2024/05/17 05:59
问题场景
在使用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的版本。
1 0
- proguard.ParseException: Unknown option '-keepdirectories' in line 57 of file
- Error: Unsupported java version '1.8' in line 2 of file 'proguard.conf'
- Counting number of line in a file
- Cause: Unknown command-line option '-X'.
- android- Cause: Unknown command-line option '-X'.
- PHP Warning: File upload error - unable to create a temporary file in Unknown on line 0
- Warning: Unknown: POST Content-Length of 53 bytes exceeds the limit of 0 bytes in Unknown on line 0
- org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: unknown encoding
- org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: unknown encoding
- freemarker.core.ParseException: Unexpected end of file reached
- freemarker.core.ParseException:Unexpected end of file reached
- proguard.ParseException: Expecting keyword 'class', 'interface', or 'enum' before '-libraryjars' in
- Warning: POST Content-Length of 81360713 bytes exceeds the limit of 3145728 bytes in Unknown on line
- mysql启动错误之eror: Found option without preceding group in config file: /Users/gukey/.my.cnf at line: 1
- multi-line comment In file
- FAILED: ParseException line mismatched input '<EOF>' expecting StringLiteral near 'by' in
- unexpected end of file in HotNewspro\includes\directory.php on line 22
- Parse error: syntax error, unexpected end of file in ..\..\functions.php on line 1246
- Combox控件下拉选择不同值触发的动作响应
- 关于移动平台路径
- CK100在win7安装驱动方法
- 按位与按位或
- Java学习笔记之集合框架1
- proguard.ParseException: Unknown option '-keepdirectories' in line 57 of file
- 使用JSON-lib时报There is a cycle in the hierarchy!错误的解决方案
- HDU 1060
- SQL Server 索引和视图
- 安卓4.1: input系统从frameworks到kernel
- 第26讲-项目一-投票表决器
- HTML5中缓存技术
- 数据库系统——B+树索引
- linux下环境变量的使用