【问题标题】:Problems running proguard for single jar - can't find java classes为单个 jar 运行 proguard 时出现问题 - 找不到 java 类
【发布时间】:2015-02-11 11:54:37
【问题描述】:

我正在尝试使用 Proguard 优化 jar

我的配置:

    -injars       MyLib-1.0.jar
    -outjars      MyLib-1.0.proguard.jar
    -libraryjars  retrace.jar
    -libraryjars  guava-18.0.jar
    -printmapping MyLib.map

    -keep public class MyLib {
        public String myPublicCallEntryPoint(java.lang.String);
    }

    -keep public class * {
        public protected *;
    }

    -keepclassmembernames class * {
        java.lang.Class class$(java.lang.String);
        java.lang.Class class$(java.lang.String, boolean);
    }

然后我运行它:java -jar proguard.jar @myconfig.pro -verbose

日志输出:

Initializing...
Note: the configuration refers to the unknown class 'String'
Note: the configuration refers to the unknown class 'java.lang.String'
Note: the configuration refers to the unknown class 'java.lang.Class'
Note: the configuration refers to the unknown class 'java.lang.String'
Note: the configuration refers to the unknown class 'java.lang.Class'
Note: the configuration refers to the unknown class 'java.lang.String'

有什么办法可以防止这样的事情发生吗?如何让 proguard 识别 Java 基类?

【问题讨论】:

    标签: java jar proguard


    【解决方案1】:

    问题是我把来自 JRE 的 rt.jar 误认为是来自 proguard 包的回溯。

    【讨论】:

      猜你喜欢
      • 2017-01-28
      • 2010-09-23
      • 1970-01-01
      • 2012-03-25
      • 2011-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-21
      相关资源
      最近更新 更多