前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mac的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程

Mac的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程

原创
作者头像
Mintimate
修改2021-07-06 12:07:55
10.7K1
修改2021-07-06 12:07:55
举报
文章被收录于专栏:Mintimate's BlogMintimate's Blog

前言

从Windows转为Mac的用户,第一次配置JDK环境变量可能有些不知所措;上次给搭建介绍了如何在Linux上配置JDK,这次给大家介绍怎么在Mac上配置JDK。配置好JDK,就可以运行Minecraft服务器或者是Apache Tomcat服务器等基于Java虚拟机的应用程序。

一般可选方法有(本次均会详细演示和解析):

  • 使用Homebrew配置安装
  • 手动配置安装

本次文章,先教大家配置默认JDK(配置JAVA_HOME),再教大家配置Jenv来实现多种JDK共存和切换如果你没有多版本JDK的需要,那么只需要配置默认JDK即可。

JDK的配置(常规JDK配置方法)

这边以OpenJDK这样的生产环境JDK配置为主,如果你想配置Oracle的JDK,请使用手动配置安装。

使用Homebrew配置安装

Mac用户可以自己配置Homebrew,如果事先没有配置Homebrew,可以查看这篇文章来配置Homebrew:

https://www.mintimate.cn/2020/04/05/Homebrew

Homebrew配置好后,在Terminal输入brew -v查看:

代码语言:txt
复制
mintimate@MintimateMacBook-Pro ~ % brew -v
Homebrew 2.7.1
Homebrew/homebrew-core (git revision 1df47; last commit 2020-12-28)
Homebrew/homebrew-cask (git revision 60c3c; last commit 2020-12-28)
查看Homebrew版本
查看Homebrew版本

如果Homebrew长时间未响应,可以换源Homebrew到清华源

之后,我们可以使用Homebrew来安装并自动配置JDK:

代码语言:txt
复制
# 使用Homebrew搜索JDK
brew search openjdk
# 安装OpenJDK8
brew install openjdk@8
Homebrew搜索OpenJDK
Homebrew搜索OpenJDK

之后片刻等待后,JDK就安装好了。

手动配置安装

其实个人还是推荐自己手动配置

下载JDK

首先我们需要下载JDK的包,大家可以按需下载:

版本号为8u211以后的OracleJDK版本,许可协议从BCL换成了OTN,这就意味着,你不能在生产环境使用这个版本了,所以个人推荐使用OpenJDK8或OpenJDK11:

JDK的选择
JDK的选择

下载好后,解压:

解压后得到的文件
解压后得到的文件

再打开该文件,提取里面的包含Contents的文件夹,如:

包含Contents的文件,为JDK
包含Contents的文件,为JDK

macos自带一个Java虚拟机目录,只是默认为空;我们就把我们自己的JDK移动进去,terminal内输入:

代码语言:txt
复制
open /Library/Java/JavaVirtualMachines
拖到这里嗷
拖到这里嗷

当然,对terminal命令熟悉,可以使用mv命令,这里不再赘述。

配置环境变量

在比较旧版本的macOS内,环境变量的配置文件是 ~/.bash_profile;新版本的macOS(Catalina以后)使用zsh,所以配置文件是~/.zshrc

注意:虽然和Linux一样,可以配置/etc/profile文件,且优先级最高,但是原则上为保持macOS稳定和完整安全,不推荐直接操作/etc/profile文件。

我使用的是Big Sur所以,配置~/.zshrc文件:

代码语言:txt
复制
open ~/.zshrc

我这里使用文本编辑器打开,你也可以直接用vim或vi命令。

在文末追加:

代码语言:txt
复制
JAVA_HOME="/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home"
CLASS_PATH="$JAVA_HOME/lib"
PATH=".:$PATH:$JAVA_HOME/bin"

之后,保存后,在terminal输入:

代码语言:txt
复制
source ~/.zshrc

配置生效,JDK配置完成

Jenv的配置--多种JDK共存和切换

在一些情况下,我们需要切换JDK的版本,比如:我们拷贝他人项目,他人项目JDK版本为11,而你自己配置的JDK版本为8,存在不兼容。这个时候我们就需要去调整JDK版本,有没有方法可以一劳永逸,轻松切换JDK呢?答案是Jenv:

什么是Jenv

Jenv项目地址:https://www.jenv.be

按照官网的解释:

jEnv is a command line tool to help you forget how to set the JAVA_HOME environment variable

简单地说:使用一条命令可以轻松配置JAVA_HOME到环境变量

如何配置Jenv

Jenv配置方法很简单,两个方法:使用Homebrew配置安装手动配置安装

使用Homebrew配置安装

刚刚我们已经介绍如何安装Homebrew,所以再次调用Homebrew来安装:

代码语言:txt
复制
brew install jenv

之后根据自己terminal使用的是bash还是zsh来添加环境变量:

代码语言:txt
复制
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"

如:Big Sur用户,打开~/.zshrc文件,追加内容:

jenv环境变量
jenv环境变量

之后,和上文一样source ~/.zshrc一次,重载配置即可。

手动配置安装

其实jenv的话,个人还是推荐Homebrew自动配置

不过,`手动配置手动配置也很简单,我们下载Jenv的发行版本包:

  • 手动配置Git部署在确保你设备按照了Git情况下,终端输入:# Jenv export PATH="/Users/mintimate/.jenv/bin:$PATH" eval "$(jenv init -)"之后,和上文一样source ~/.zshrc一次,重载配置即可。
  • GitHub项目地址
  • 镜像下载 镜像下载适用于访问GitHub过慢,或无法访问用户。 下载后,得到jenv-0.5.4.zip压缩文件,使用unzip命令或解压工具解压。解压到自己知道路径的地址,比如我解压的地址是/Users/mintimate/.jenv:
    jenv解压后
    jenv解压后
    所以,我们环境变量就这样写:

如何使用Jenv

Jenv的使用很简单,利用配置JDK8的方法,我下载了JDK11,存储地址是/Library/Java/JavaVirtualMachines/zulu-11.jdk,我们添加到Jenv里:

代码语言:txt
复制
jenv add /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
jenv添加JDK
jenv添加JDK

可以看到,jenv自动检录多余的名称。你可以放任不管,但是如果你是“强迫症”人群,可以手动remove多余名称:

remove多余标签
remove多余标签

之后,使用versions命令,可以看到Jenv管理的JDK版本:

代码语言:txt
复制
jenv versions
image.png
image.png

当我们要在当前目录下,调用JDK11时候,终端输入:

代码语言:txt
复制
jenv local 11

这个时候,输入java -version就是JDK11了:

代码语言:txt
复制
openjdk version "11.0.9" 2020-10-20 LTS
OpenJDK Runtime Environment Zulu11.43+21-CA (build 11.0.9+11-LTS)
OpenJDK 64-Bit Server VM Zulu11.43+21-CA (build 11.0.9+11-LTS, mixed mode)

Tips

其实,对于电脑配置JDK;我个人建议是配置JDK8JDK11,虽然JDK8很稳定,但是也确实有点年代,可以往JDK11靠了。而是否使用Homebrew配置,我个人倾向

  • JDK自己手动配置
  • Jenv使用Homebrew配置

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • JDK的配置(常规JDK配置方法)
    • 使用Homebrew配置安装
      • 手动配置安装
        • 下载JDK
        • 配置环境变量
    • Jenv的配置--多种JDK共存和切换
      • 什么是Jenv
        • 如何配置Jenv
          • 使用Homebrew配置安装
          • 手动配置安装
        • 如何使用Jenv
        • Tips
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档