如何在MacOS上安装额外的java ?我安装了jdk8,运行正常。但是现在出于开发目的,我需要安装jdk7。当试图通过DMG文件安装旧版本时,我得到一个警告,已经安装了新的java版本,安装程序退出。
/usr/libexec/java_home -verbose
Matching Java Virtual Machines (1):
1.8.0_20, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
除了这个,如何安装jdk7 ?
Jenv谈Mac Sierra:
如果安装后无法工作,请执行此错误修复以将Java可执行文件添加到路径
export PATH="$HOME/.jenv/shims:$PATH"
尽管eval "$(jenv init -)"可以做这个工作。原因是/bin文件夹已经不存在了,就像在它的主页上描述的那样,但是shim文件夹被用作/bin。
Make sure ~/。Jenv在那里
哪个java可以打印/库/…
Jenv global 1.8
Jenv外壳1.8
最终,java给了你:
\用户- xxxx - jenv shims / java。
macOS Sierra 420
这个指南是从各种来源(上面的回复和其他帖子)拼凑起来的,非常完美。
0. 如果还没有安装,请安装自制软件。
参见https://brew.sh/
1. 安装jenv
brew install jenv
2. 将jenv添加到bash配置文件中
if which jenv > /dev/null; then eval "$(jenv init -)"; fi
3.将jenv添加到您的路径
export PATH="$HOME/.jenv/shims:$PATH"
4. 利用“组装/ cask-versions”
供参考:“Tap”扩展了brew的可用回购列表,它可以安装,高于和超出brew的默认可用回购列表。
brew tap homebrew/cask-versions
5. 安装最新版本的java
brew install java --cask
6. 安装java 6(或7或8)
brew install java6 --cask
#brew install java7 --cask
#brew install java8 --cask
? 也许关闭并重新启动终端,让它看到任何新的ENV变量已经设置。
7. 检查安装
所有Java版本都安装在这里:/Library/Java/JavaVirtualMachines让我们看看。
ls -la /Library/Java/JavaVirtualMachines
8. 每次将每个路径添加到jenv。
我们需要添加“/Contents/Home”到版本文件夹。
警告:使用您机器上的实际路径…这些只是例子
jenv add /Library/Java/JavaVirtualMachines/1.6.0___EXAMPLE___/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk___EXAMPLE___/Contents/Home
9. 检查jenv是否注册成功
jenv versions
10. 设置java版本使用(全局)
其中XX与上面版本列表中的一项匹配。
jenv global XX
检查java版本
java -version
检查jenv版本
还应该用星号表示正在使用的当前版本。
jenv versions
DONE
未来快速参考
更改java版本
... 请参阅可用的java版本列表
jenv versions
…然后,其中XX与上面列表中的一项匹配
jenv global XX
SDKMAN !是一个伟大的工具,使用多个版本的Java, Gradle, Groovy, Kotlin和其他JVM工具在Mac OS上。安装和使用文档很容易在主站找到。
(我没有隶属关系,只是一个快乐的用户)。
作为一个使用示例,如果我在终端窗口中输入以下内容,会有一个可用的Java SDK版本列表(为简洁起见,经过编辑):
$ sdk list java
Available Java Versions
+ 9ea170
> + 8u131
7u141-zulu
这里的+表示已安装的版本。>表示当前正在使用的版本。安装新版本:
$ sdk install java 7u141-zulu
要在此终端窗口中使用一个版本:
$ sdk use java 9ea170
我最近回复,我真的建议你用SDKMAN代替Homebrew。
使用SDKMAN,您可以轻松地在mac上安装不同版本的JAVA,并从一个版本切换到另一个版本。
你也可以使用SDKMAN的ANT, GRADLE, KOTLIN, MAVEN, SCALA等…
要在mac上安装新版本,可以运行命令sdk install java 15.0.0.j9-adpt
我最近发现了一个叫做Jabba的Java版本管理器,它的用法与其他语言的版本管理器非常相似,比如rvm(ruby)、nvm(node)、pyenv(python)等。而且它是跨平台的,所以肯定可以在Mac上使用。
安装完成后,它将在~/目录下创建一个目录。jabba来放置你安装的所有Java版本。它“支持安装Oracle JDK(默认)/ Server JRE, Zulu OpenJDK(自0.3.0起),IBM SDK, Java技术版(自0.6.0起)和自定义url。”
他们的Github上列出了基本用法。简单总结一下:
curl -sL https://github.com/shyiko/jabba/raw/master/install.sh | bash && . ~/.jabba/jabba.sh
# install Oracle JDK
jabba install 1.8 # "jabba use 1.8" will be called automatically
jabba install 1.7 # "jabba use 1.7" will be called automatically
# list all installed JDK's
jabba ls
# switch to a different version of JDK
jabba use 1.8
Jenv谈Mac Sierra:
如果安装后无法工作,请执行此错误修复以将Java可执行文件添加到路径
export PATH="$HOME/.jenv/shims:$PATH"
尽管eval "$(jenv init -)"可以做这个工作。原因是/bin文件夹已经不存在了,就像在它的主页上描述的那样,但是shim文件夹被用作/bin。
Make sure ~/。Jenv在那里
哪个java可以打印/库/…
Jenv global 1.8
Jenv外壳1.8
最终,java给了你:
\用户- xxxx - jenv shims / java。