网站开发可以多少钱一个月,wordpress案例站点,手机百度关键词排名 网站优化软件,深圳网站制作公司售后服务文章目录 1. jenv是什么#xff1f;2. 安装3. 配置4.多版本切换5. 总结 现在已经基本过了那句“他发由他发#xff0c;我用Java8”的时代了#xff0c;越来越多的开发者开始拥抱Java11#xff0c;Java17#xff08;毕竟spring boot 3要求最低这个版本了#xff09;#… 文章目录 1. jenv是什么2. 安装3. 配置4.多版本切换5. 总结 现在已经基本过了那句“他发由他发我用Java8”的时代了越来越多的开发者开始拥抱Java11Java17毕竟spring boot 3要求最低这个版本了Java 21也已经release了。 我在
Mac OS上JDK8更换JDK11已经介绍了一种升级的方法。但是今天想要介绍一个新的可以让多个版本Jdk 共存且可以互相切换的工具-jenv。 1. jenv是什么
简单来说jenv就是一个可以用命令行来配置Java环境的工具。配置环境变量的本质就是配置不同的jdk所有位置。
2. 安装
如果已经安装了homebrew那就直接用brew安装。
brew install jenv没有安装的话也可以直接使用下载到本地
git clone https://github.com/jenv/jenv.git ~/.jenv我这里使用brew安装。没有梯子可能安装会慢很多。
3. 配置
可以使用指令
jenv doctor查看jenv是否安装好了如果没有安装好会有提示 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 : /usr/local/Cellar/jenv/0.5.5_2/libexec/libexec:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Users/yuanyao/tools/maven/bin
[ERROR] Jenv is not loaded in your zsh
[ERROR] To fix : echo eval $(jenv init -) /Users/yy/.zshrc
➜ ~ echo eval $(jenv init -) /Users/yy/.zshrc执行完上面的操作后还要再刷新一下zsh的session
关闭当前iterm2再打开一个新的执行 source ~/.zshrc 执行完以后我们可以看到jenv已经好了
source ~/.zshrc
jenv has been updated, process to refresh plugin links
➜ ~ jenv doctor
[OK] No JAVA_HOME set
[OK] Java binaries in path are jenv shims
[OK] Jenv is correctly loaded然后再把安装好的多个版本的jdk进行配置 ~ jenv add /Library/Java/JavaVirtualMachines/jdk-11.0.12.jdk/Contents/Home
oracle64-11.0.12 added
11.0.12 added
11.0 added11.0.12 already present, skip installation
➜ ~ jenv add /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
oracle64-21.0.1 added
21.0.1 added
21.0 added21.0.1 already present, skip installation这样我们就配置好了jdk11和jdk21。我们可以使用jenv versions查看所有纳入管理的jdk版本
jenv versions
* system (set by /Users/yy/.jenv/version)11.011.0.1221.021.0.1oracle64-11.0.12oracle64-21.0.14.多版本切换
jenv设置环境有两个级别一个是global全局级别一个是local级别即当前目录及子目录。
jenv versionssystem11.0
* 11.0.12 (set by /Users/yy/.jenv/version)21.021.0.1oracle64-11.0.12oracle64-21.0.1
➜ ~ java -version
java version 11.0.12 2021-07-20 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.128-LTS-237)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.128-LTS-237, mixed mode)
➜ ~ jenv global 21.0.1
➜ ~ java -version
java version 21.0.1 2023-10-17 LTS
Java(TM) SE Runtime Environment (build 21.0.112-LTS-29)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.112-LTS-29, mixed mode, sharing)5. 总结
jenv的本质就是通过命令行来指定需要使用的java环境是哪一个不用这个工具也可以自己使用export指令来设置JAVA_HOME的值。