【问题标题】:What is path of JDK lib on MacOSx?MacOSx 上 JDK lib 的路径是什么?
【发布时间】:2015-09-25 02:44:03
【问题描述】:

我想删除一个不小心提交到Github Repo的文件,所以我决定采取bfg的方法彻底删除这个文件,https://rtyley.github.io/bfg-repo-cleaner/#speed,但是我遇到了一个异常:

错误:无法访问 jarfile bfg.jar

我想我没有把bfg.jar 放到正确的路径中,有什么想法可以解决我的问题吗?

【问题讨论】:

    标签: java git classpath


    【解决方案1】:

    JDK 的标准安装是/Library/Java/JavaVirtualMachines。如果您的类路径中缺少bfg.jar,请尝试按照此处提供的答案:

    Mac User - How do i set CLASSPATHS in Mac (I'm working on a Lucene Demo)

    【讨论】:

    • 谢谢@Keith,在 MacOSx 上安装的 jdk 的确切 lib 路径是什么?
    • 好吧,在我的 (Yosemite 10.10.5) 上,它位于 /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/lib
    • 嗯,bfg-1.12.5.jar的路径是:/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/lib/bfg-1.12.5.jar,但是还是出现异常:Error: Unable to access jarfile bfg-1.12.5.jar
    • 你在 shell 上运行的命令是什么,你的 jar 清单中有什么?
    【解决方案2】:

    bfg.jar 文件的放置位置无关紧要,只要在调用命令时使用此位置引用即可。

    示例(假设您使用的是 Linux 或 Mac OS X,如果您使用的是 Windows,请调整路径语法):

    • bfg.jar 文件下载到$HOME/bfg.jar。如果需要,重命名文件,原始下载中包含版本号,例如bfg-1.12.5.jar
    • 使用资源管理器、Finder 或其他工具来验证文件是否位于正确的位置并具有正确的名称。
    • 在您要清理的 Git 存储库的父文件夹中打开终端/Shell。如果您的 Git 存储库位于 $HOME/workspaces/foo,请在 $HOME/workspaces 中打开终端
    • 通过执行java -version 确保路径上有java 命令。这应该会显示 Java 版本。
    • 使用您下载文件的路径运行 BFG 命令,例如

      java -jar $HOME/bfg.jar --strip-blobs-bigger-than 100M foo
      

    我强烈建议不要将下载的 Jar 文件放在系统位置 - 这只会导致麻烦。将它们放在安全的地方并根据需要引用它们。

    【讨论】:

    • 是的,谢谢,根据您的建议,它确实对我有用。
    猜你喜欢
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-15
    • 2020-10-30
    • 2011-01-27
    • 1970-01-01
    相关资源
    最近更新 更多