【问题标题】:How to obfuscate a library jar in ProGuard?如何在 ProGuard 中混淆库 jar?
【发布时间】:2013-07-17 14:07:15
【问题描述】:

我有一个使用另一个 jar 作为库的 jar。我希望它们都被混淆。
引用 ProGuard documentation:

ProGuard 需要库 jars(或 wars、ears、zips 或 要指定的输入 jar 的目录)。这些本质上是 编译代码所需的库。 ProGuard 使用它们来重建所需的类依赖项 适当的处理。 图书馆罐子本身始终保留 不变。你仍然应该把它们放在你的 final 的类路径中 应用。

如何改变这种行为?

更新:
我不能使用增量混淆,因为我不知道要指定什么作为库 jar 的入口点。

【问题讨论】:

    标签: java obfuscation proguard


    【解决方案1】:

    您只需将您的两个罐子指定为输入罐子(使用选项-injars)。然后它们都将被混淆。任何其他 jar,例如运行时 jar,都是库 jar(使用选项 -libraryjars 指定)。 ProGuard 需要它们来正确处理您的代码,但它使它们保持不变。

    【讨论】:

    • "...它使它们保持不变" 你的意思是任何 JAR 都不会被混淆,即使是在 -injars 中指定的那些?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    • 2015-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多