-libraryjars,proguard的目的是什么?

时间:2014-03-18 08:18:39

标签: java android proguard

-libraryjars  <java.home>/lib/rt.jar
在proguard的文档中,它说你使用-libraryjars来添加到项目中的jar文件。我在libs文件夹中添加了库jar,从来没有使用它。 jar中的文件是alwasys与其余代码混淆。从来没有必要为库存设置更改proguard的任何设置。

我需要做的唯一更改是删除一些类以免被proguard修改以避免错误。这些与序列化或其他问题有关,例如在GSON库中。

以下是使用-keep命令从混淆过程中删除类的一些示例

-keep class sun.misc.Unsafe { *; }

-keep class com.google.gson.stream.** { *; }

-keep class com.myproject.testproject.MainActivity$TestObject { *; }

相比之下,我不明白示例代码中-libraryjars的用途是什么。即使不使用此行,Android项目的libs文件夹中添加的所有jar都会被混淆,没有任何问题。

有什么用?

1 个答案:

答案 0 :(得分:2)

您可以在ProGuard手册中找到有关其用途的说明&gt; Introduction

-injars / -libraryjars / -outjars选项指定ProGuard的输入文件和输出文件。 Android构建过程已经为您指定了必要的选项,因此您不必在配置文件中重复这些选项。