【问题标题】:java's path still /usr/bin/java after brew cask install javabrew cask install java 后java的路径仍然是/usr/bin/java
【发布时间】:2016-12-19 16:02:34
【问题描述】:

我用 homebrew 安装了 java,使用命令 brew cask install java。

安装成功后,输入which java,路径显示为/usr/bin/java

当我输入 brew cask info java 时,它出现了:

java: 1.8.0_102-b14 Java标准版开发包

​​>

/usr/local/Caskroom/java/1.8.0_102-b14 (227.5M) https://github.com/caskroom/homebrew-cask/blob/master/Casks/java.rb 内容 JDK 8 更新 102.pkg (pkg) 修改 JRE 以防止打包应用程序出现问题, 如这里所讨论的:如果您的 Java 应用程序仍然要求 JRE 安装,您可能需要重新启动或注销/登录。

安装此 Cask 意味着您已同意 Oracle 二进制代码 Java SE 许可协议,位于

我忘记链接了吗?

【问题讨论】:

  • 我从 brew cask 安装了 java 1.8.0_102,如果我这样做了which java,我也会得到/usr/bin/java。所以这不是问题的迹象。 /usr/bin/java 只是到/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java 的符号链接,我猜这是找到正确java二进制文件的一些间接事物。无论如何,如果你运行java -version,你实际上会得到什么?在我的环境中,即使which java 给了我/usr/bin/javajava -version 给了我java version "1.8.0_102" Java(TM) SE Runtime Environment (build 1.8.0_102-b14)(木桶版本),正如预期的那样。
  • 我明白了:java 版本“1.8.0_102”Java(TM) SE 运行时环境(构建 1.8.0_102-b14)Java HotSpot(TM) 64 位服务器 VM(构建 25.102-b14,混合模式)
  • 这就是你想看到的,对吧?因为这意味着当您只需键入 java 时,它使用的是您从自制软件安装的版本——这意味着which java 告诉您/usr/bin/java 不是问题(事实上这是意料之中的)。换句话说,您已经让一切正常工作,您无需再做任何事情(例如,您无需再链接任何内容)。

标签: java path installation homebrew


【解决方案1】:

/usr/bin/java 是一个符号链接。

要查看它指向的位置,请输入ls -la /usr/bin/java

brew cask 正在安装到/Library/Java/JavaVirtualMachines/jdk1.8.0_something.jdk/Contents/Home

如果前面的命令ls -la 与此匹配,则很好。

如果不是,则表示您之前安装了另一个 java。在这种情况下,您可能需要使用jenv 之类的工具在多个安装之间切换。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-19
    • 2023-03-14
    • 2013-04-22
    • 2018-03-06
    • 2019-05-08
    • 1970-01-01
    相关资源
    最近更新 更多