首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Brew已安装的Java无法与系统java文件夹进行符号链接

Brew已安装的Java无法与系统java文件夹进行符号链接
EN

Stack Overflow用户
提问于 2021-12-17 07:02:59
回答 1查看 1.4K关注 0票数 1

我使用Homebrew在我的Java11 mbp上运行命令安装了M1

代码语言:javascript
复制
brew search java
代码语言:javascript
复制
brew install java11

它安装了java版本。当我跑的时候

代码语言:javascript
复制
brew info java

我明白了

代码语言:javascript
复制
openjdk: stable 17.0.1 (bottled) [keg-only]
Development kit for the Java programming language
https://openjdk.java.net/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/openjdk.rb
License: GPL-2.0-only with Classpath-exception-2.0
==> Dependencies
Build: autoconf ✔
==> Caveats
For the system Java wrappers to find this JDK, symlink it with
  sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk

openjdk is keg-only, which means it was not symlinked into /opt/homebrew,
because macOS provides similar software and installing this software in
parallel can cause all kinds of trouble.

==> Analytics
install: 229,799 (30 days), 652,569 (90 days), 2,040,179 (365 days)
install-on-request: 64,996 (30 days), 187,761 (90 days), 591,813 (365 days)
build-error: 5,513 (30 days)

我根据警告运行sudo命令,但我不知道它是否做了什么。当我跑的时候

代码语言:javascript
复制
Java --version

我明白了

代码语言:javascript
复制
The operation couldn’t be completed. Unable to locate a Java Runtime.
Please visit http://www.java.com for information on installing Java.

我不明白为什么会这样。以前我已经启动并运行了Java,但是我必须格式化并安装一个新的操作系统副本,现在当我再次尝试安装Java时,我遇到了这个问题。我假设Homebrew安装位置之间的符号链接不是与系统java位置的链接,但我可能错了。

EN

回答 1

Stack Overflow用户

发布于 2022-02-15 19:45:35

我也遇到了同样的问题,但是当我运行brew info java时,它给了我几个运行步骤:

代码语言:javascript
复制
sudo ln -sfn /Users/${whoami}/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk

export PATH="/home/${whoami}/homebrew/opt/openjdk/bin:$PATH"

java -version 
# This should work
# To make the export permanent
echo 'export PATH="/Users/${whoami}/homebrew/opt/openjdk/bin:$PATH"' >> ~/.zshrc 

假设${whoami} (您的用户名与主文件夹相同)。否则,将变量替换为实际文件夹名。

而且,看起来你想要java11,很可能在~/homebrew/opt/下面

你可以搜索它:

代码语言:javascript
复制
find ~/homebrew/ -name '*openjdk*'

在本例中,您将找到一个类似于openjdk@11的文件,它在~/homebrew/opt/openjdk@11中,您可以导出:

代码语言:javascript
复制
export PATH="/home/${whoami}/homebrew/opt/openjdk@11/bin:$PATH"

而不是

代码语言:javascript
复制
export PATH="/home/${whoami}/homebrew/opt/openjdk/bin:$PATH"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70389490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档