开发环境
Mac环境
安装 jdk

前言

熟悉前端的同学都知道如果想快速切换node版本可以用 nvm 这样的包管理工具,那么对于Java开发同学来讲,有时候运行不同的项目需要不同的JDK版本,那么有什么方式可以管理不同的JDK版本呢 ? 一句话回答那就是有 。这里先卖个关子,咱们先从如何快速安装JDK说起,通过 **brew **可以快速安装指定版本的JDK 。

这篇文章计划从三个部分来讲:【这里以Mac电脑为例】

  1. 如何安装brew
  2. 如何通过brew安装JDK
  3. 通过一行命令切换JDK版本

1、如何安装brew

1.1 brew 是什么 ?

有同学可能会有疑问这个brew是什么呢,下面放上 官方的地址: https://brew.sh/ (opens in a new tab) ,打开网址会看到下面这样一个页面,用官方的话说 : The Missing Package Manager for macOS (or Linux) 用于MacOS(或Linux)的缺失的软件包管理器

image.png

1.2 安装brew

1.2.1 官方提供安装方式

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

有些同学可能会用官方提供的方式安装,但一般情况下会安装失败,爆下面这个错 Failed to connect to raw.githubusercontent.com port 443: Connection refused

1.2.2 通过开源项目安装

第三方开源项目地址:https://gitee.com/cunkai/HomebrewCN (opens in a new tab) 使用如下命令:

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

可以根据实际需求选择源,这里以中科大为例,安装成功后 按照提示 刷新下配置文件或者重启下终端 image.png image.png

1.2.3 常用brew命令:

本地软件库列表:brew ls 查找软件:brew search google(其中google可替换为要查找的软件关键字, 比如QQ) 查看brew版本:brew -v
更新brew版本:brew update 卸载命令:brew uninstall

2、如何通过brew安装JDK

2.1 旧版本(不推荐)

https://github.com/AdoptOpenJDK/homebrew-openjdk (opens in a new tab) ,官方提示已被正式废弃了,推荐使用temurin,并且在2021-08-01(2021年8月1日)之后将不再得到任何更新。请相应调整你的使用。

image.png

2.1.1 搜索jdk

brew search jdk

image.png

如果你获取的列表中没有 adoptopenjdk8 等,请执行 brew tap adoptopenjdk/openjdk。brew只收录了adoptopenjdk最后的版本,一些过期的版本,交由adoptopenjdk自己管理。而 brew tap adoptopenjdk/openjdk,则是拉取adoptopenjdk自管理包的信息。

brew tap adoptopenjdk/openjdk

image.png image.png

2.1.2 安装 adoptopenjdk8

brew install --cask adoptopenjdk8

2.1.3 查看 jdk 版本

java -version

image.png

2.1.4 查看jdk安装路径

/usr/libexec/java_home -V
 
环境变量
echo $JAVA_HOME$

2.1.5 卸载jdk

brew uninstall --cask adoptopenjdk8

2.2 新版本(强烈推荐)

AdoptOpenJDK 已被弃用,并从 Adoptium 过渡到 Eclipse Temurin The new website for this project is here called Adoptium (opens in a new tab) . In Homebrew, the package that installs the new AdoptOpenJDK is here named temurin (opens in a new tab). 这个项目的新网站在这里被称为Adoptium。在Homebrew中,安装新的AdoptOpenJDK的包在这里名为temurin。 网址:https://formulae.brew.sh/cask/temurin (opens in a new tab)

image.png

2.2.1 安装最新版本

brew install --cask temurin

2.2.2 安装指定版本jdk

brew tap homebrew/cask-versions # 先执行
 
brew install --cask temurin17   # jdk17
 
brew install --cask temurin8    # jdk8
/usr/libexec/java_home -V

image.png

2.3 异常处理

问题1:

Error: Cask adoptopenjdk8 exists in multiple taps: homebrew/cask-versions/adoptopenjdk8 adoptopenjdk/openjdk/adoptopenjdk8

sudo rm -rf /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-versions/Casks/adoptopenjdk8.rb

注:这里主要讲述如何通过 brew 安装JDK ,如有安装其它软件教程需求,欢迎评论留言

3、通过一行命令切换JDK版本

bash 、zsh 这里不过多讲述了,如需要的同学可以自行了解,或者在文章下方评论留言 实际操作以电脑环境为主

3.1 环境配置介绍

Mac系统默认使用bash作为终端,但是新的Mac系统已经默认使用zsh,查看方式:

 cat /etc/shells

image.png

3.2 bash与zsh切换命令

chsh -s /bin/zsh
chsh -s /bin/bash

3.1 bash

如果是bash,则在Terminal输入以下指令

touch .bash_profile     【如果有不需要创建】
open -e ~/.bash_profile 【弹窗编辑】 
vim .bash_profile 		  【命令行编辑】

3.2 zsh

如果是zsh,则在Terminal输入以下指令

touch .zprofile     【如果有不需要创建】
open -e ~/.zprofile 【弹窗编辑】 
vim .zprofile 		  【命令行编辑】

之后会弹出一个文本,接下来就是输入代码的时候了 这里配置要切换的JDK版本分别是JDK8 和JDK17,所以在文本里输入以下代码

# Configure JDK
# JDK 8
export JAVA_8_HOME=`/usr/libexec/java_home -v 8`
# JDK 17
export JAVA_17_HOME=`/usr/libexec/java_home -v 17`  
 
# Alias
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"  
alias jdk17="export JAVA_HOME=$JAVA_17_HOME"  
 
export JAVA_HOME=$JAVA_17_HOME
PATH="${JAVA_HOME}:${PATH}"
export PATH  
export JAVA_HOME=$JAVA_17_HOME   # 这一行代码是将默认的JDK版本设置为JDK17
 
jdk8
jdk17
这两个 Alias(别名) 则是我们切换JDK版本的指令

之后按保存并关闭该文本,回到Terminal,并输入以下指令使刚才的代码生效

source ~/.bash_profile   # 刷新配置
 
或者
source .zprofile

下面进行测试 image.png

3.3 on-my-zsh 配置

在 .zshrc 文件添加 以下配置

# java
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_17_HOME=$(/usr/libexec/java_home -v17)
alias jdk8='export JAVA_HOME=$JAVA_8_HOME'
alias jdk17='export JAVA_HOME=$JAVA_17_HOME'
export JAVA_HOME=$JAVA_17_HOME
export PATH=$PATH:$JAVA_HOME/bin
$ vim .zshrc

image.png 刷新配置 source .zshrc

$ source .zshrc

总结

文章到这里就结束了,通过这篇文章我们了解到 如何安装brew以及brew是什么、如何通过brew安装JDK、通过一行命令切换JDK版本 等。通过快速切换 JDK 版本可以更方便我们日常开发工作。