【问题标题】:Running ProGuard on OS X: Where is Apple's equivalent to the rt.jar?在 OS X 上运行 ProGuard:Apple 的 rt.jar 在哪里?
【发布时间】:2011-02-16 02:37:19
【问题描述】:

我正在运行 ProGuard 来缩小我的 jar 文件。它需要的参数之一是系统的运行时 jar。这是在 Sun 发行版上的 $JAVA_HOME/lib/rt.jar,但不是在 Apple 的 Mac OS X(在我的例子中是 v10.6 (Snow Leopard))上。

是否有适用于 OS X 的 rt.jar?

【问题讨论】:

    标签: java macos proguard


    【解决方案1】:

    它被称为 classes.jar,它位于 /System/Library/Frameworks/JavaVM.framework/Classes 下

    详情请看这里:

    http://lists.apple.com/archives/java-dev/2003/Mar/msg01530.html

    【讨论】:

    • 在我的系统 (Mojave 10.14.3) 上,除了 gradle 缓存 (~/.gradle/caches/) 之外,没有 classes.jar。但是,一个 rt.jar,位于 /Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/jre/lib/rt.jar。
    【解决方案2】:

    This blog entry 描述了一种在不修改 Proguard 配置的情况下解决问题的相对直接的方法。

    该条目建议创建两个符号链接,以便 rt.jarjsse.jar 存在于 Proguard 期望的路径中。

    站在/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/lib 目录并运行以下命令为我解决了这个问题:

    sudo ln -s ../../Classes/classes.jar rt.jar
    sudo ln -s ../../Classes/jsse.jar .
    

    【讨论】:

      【解决方案3】:

      What should I set JAVA_HOME to on OSX 问题中有一些关于如何到达rt.jar 等效项的说明。

      简短的回答是使用/usr/libexec/java_home 的结果或将JAVA_HOME 设置为$(/usr/libexec/java_home),然后在JAVA_HOME/bundle/Classes/classes.jar 找到classes.jar(在OS X 中相当于rt.jar)

      【讨论】:

        【解决方案4】:

        在我的系统(带有 JDK1.8 的 Mojave 10.14.3)上,除了 gradle 缓存 (~/.gradle/caches/) 之外,没有 classes.jar。但是,/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/jre/lib/rt.jar 中有一个 rt.jar。我将它和jsse.jar 以与Contents/Home/lib 文件夹中的Henrik 相同的方式链接:

        ➜  lib sudo ln -s ../jre/lib/rt.jar 
        ➜  lib sudo ln -s ../jre/lib/jsse.jar
        

        Proguard 现在可以工作了。

        【讨论】:

          【解决方案5】:

          对我来说,原因是我安装了 JDK 13。安装 JDK 1.8 后,该文件出现在 ProGuard 预期的位置。安装 JDK 1.8 后,您可以运行 sudo find /Library -name rt.jar 找到 rt.jar 的确切路径

          【讨论】:

            猜你喜欢
            • 2013-04-05
            • 2013-12-08
            • 1970-01-01
            • 2015-12-06
            • 2013-10-31
            • 2016-11-26
            • 2013-03-27
            • 2015-11-05
            • 2010-10-14
            相关资源
            最近更新 更多