Macbook多版本Java JDK安装与切换(详解)

艺说IT 2024-08-11 17:05:02 阅读 62

文章目录

一、前言二、安装jenv2.1 jenv官网2.2 使用brew安装jenv2.3 设置环境变量2.4 验证jenv是否已安装

三、查看与切换jdk版本3.1 查看机器安装的jdk版本3.2 查看jenv管理的jdk版本3.3 添加到jenv管理3.4 设置全局java版本3.5 设置shell java版本

四、idea项目切换其他jdk五、总结

一、前言

java jdk 版本管理器,可以根据您的需求快速切换编译环境,这样就不需要卸载、重新安装的重复且麻烦操作,比如复现、调试漏洞需要在的不同的jdk版间切换,所以有版本管理器工具还是非常方便的。目前我用到的有python的管理工具anaconda,java jdk的管理工具jenv,所以本教程就是macbook使用jenv进行多版本java jdk的安装和切换。让我们开始学习吧~

二、安装jenv

2.1 jenv官网

<code>https://www.jenv.be/

https://github.com/jenv/jenv

2.2 使用brew安装jenv

brew install jenv

2.3 设置环境变量

export PATH="$HOME/.jenv/bin:$PATH" >> ~/.bash_profilecode>

eval "$(jenv init -)" >> ~/.bash_profile

2.4 验证jenv是否已安装

jenv doctor

输入 jenv doctor 验证,没问题的话就如下图:

在这里插入图片描述

若如官网所说,失败有error的情况,就按官方解决方法解决(我安装时没有遇到错误)。

<code>$ jenv doctor

[OK]No JAVA_HOME set

[ERROR]Java binary in path is not in the jenv shims.

[ERROR]Please check your path, or try using /path/to/java/home is not a valid path to java installation.

PATH : /Users/user/.jenv/libexec:/Users/user/.jenv/shims:/Users/user/.jenv/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

[OK]Jenv is correctly loaded

观察到jenv已正确加载,但 Java 尚未安装。

要确保JAVA_HOME已设置,请确保启用该export插件:

jenv enable-plugin export

exec $SHELL -l

如果还有问题,就先用brew安装java jdk,然后再重新输入jenv doctor进行验证。

brew install AdoptOpenJDK/openjdk/adoptopenjdk8

三、查看与切换jdk版本

3.1 查看机器安装的jdk版本

当你使用brew或者dmg方式安装的jdk,使用以下命令就能列出所有安装过的版本与路径。

/usr/libexec/java_home -V

在这里插入图片描述

3.2 查看jenv管理的jdk版本

查看当前有哪些java jdk由jenv管理。

<code>jenv versions

在这里插入图片描述

3.3 添加到jenv管理

<code>jenv add /Users/stephen/Library/Java/JavaVirtualMachines/azul-11.0.22/Contents/Home

在这里插入图片描述

3.4 设置全局java版本

全局java版本,重写打开终端java版本任保持。

<code>jenv global zulu64-11.0.22

在这里插入图片描述

3.5 设置shell java版本

只用于当前shell窗口,退出终端后就会变回全局的java版本。

<code>jenv shell zulu64-1.7.0.352

在这里插入图片描述

四、idea项目切换其他jdk

步骤:File -> Project Structure -> Project -> SDK -> Add JDK -> 找到对应JDK home目录(查看目录:/usr/libexec/java_home -V),确认即可,如下图:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这就添加进来了。

在这里插入图片描述

五、总结

不管是python还是java jdk,你有使用到的编程语言都可以搜索一下对应的版本管理器,当你需要频繁切换编译环境的时候,这时候版本管理器的重要性就体现出来了。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。