首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux的JDK和Jenv(JAVA_HOME管理器)的详细配置使用教程

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

原创
作者头像
Mintimate
修改2023-07-05 20:55:54
3.9K0
修改2023-07-05 20:55:54
举报
文章被收录于专栏:Mintimate's BlogMintimate's Blog

前言

使用第一次使用Linux的用户,往往不知道如何配置JDK;不配置JDK,就无法运行Minecraft服务器或者是Apache Tomcat服务器等基于Java虚拟机的应用程序。

一般用户会使用:

# Ubuntu/Debian
sudo apt-get install openjdk-8-jdk
# Centos
yum install java-1.8.0-openjdk

但是这样安装的OpenJDK,版本不好切换,且OpenJDK一般没有JavaFX等功能包,使用这次介绍搭建怎么自己配置。

JDK的选择和下载

Oracle版本1.8还是很稳定的,但是官方下载需要Oracle账号,需要Oracle JDK可以到Oracle官网下载:https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html

需要注意:版本号为8u211以后的JDK版本,许可协议从BCL换成了OTN,这就意味着,你不能在生产环境使用这个版本了

其他版本OracleJDK,也可以访问官网下载:https://www.oracle.com/java/technologies/javase-downloads.html

同样,生产环境需要给Oracle付费,公司用的话,就不要用Oracle版本了

适用于生产环境,这边推荐OpenJDKhttps://cn.azul.com/downloads/zulu-community/?package=jdk

ZuluJDK(OpenJDK的一种)
ZuluJDK(OpenJDK的一种)

建议使用LTS长期支持的稳定版本。

这边使用OpenJDK8作为演示,下载后文件为:zulu8.52.0.23-ca-fx-jdk8.0.282-linux_x64.tar.gz

配置JDK到环境变量

对刚刚下载的zulu8.52.0.23-ca-fx-jdk8.0.282-linux_x64.tar.gz进行解压,解压到自己熟悉的目录下,方便之后环境配置:

tar -zxvf zulu8.52.0.23-ca-fx-jdk8.0.282-linux_x64.tar.gz

解压后,在当前目录下生成zulu8.52.0.23-ca-fx-jdk8.0.282-linux_x64文件夹,我们移动到更目录下ZuluJDK下并重命名为JDK8:

mv zulu8.52.0.23-ca-fx-jdk8.0.282-linux_x64 /ZuluJDK/JDK8

Linux默认一般使用bash,所以我们配置环境变量就配置profile这个,使用vim命令:

vim /etc/profile

之后会进入vim交互模式,我们按i进入编辑模式,在文末追加:

# JDK8
Java_Home=/ZuluJDK/JDK8
CLASSPATH=$Java_Home/lib/
PATH=$PATH:$Java_Home/bin/
export PATH Java_Home CLASSSPATH
配置环境变量
配置环境变量

之后,按esc在输入:wq保存并退出。之后,你可以重启终端,也可以重载配置使JDK环境变量生效:

source /etc/profile

输入java -version就发现,并不是显示未知命令了:

openjdk version "8.52.0" 2020-10-20 LTS
OpenJDK Runtime Environment Zulu8.52.0+21-CA (build 8.52.0+11-LTS)
OpenJDK 64-Bit Server VM Zulu8.52.0+21-CA (build 18.52.0+11-LTS, mixed mode)

JDK多版本随意切换--Jenv配置

在一些情况下,我们需要切换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配置方法很简单,两个方法:

  • 使用Git自动部署git clone https://github.com/jenv/jenv.git ~/.jenv echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(jenv init -)"' >> ~/.bash_profile source /etc/profile等待片刻后,部署配置完成。注意,确保你设备可以连接GitHub嗷。手动配置手动配置也很简单,我们下载Jenv的发行版本包:
  • 手动配置Git部署在确保你设备按照了Git情况下,终端输入:
  • GitHub项目地址
  • 镜像下载

镜像下载适用于访问GitHub过慢,或无法访问用户。

下载后,得到jenv-0.5.4.zip压缩文件,使用unzip命令,解压。和上文一样,解压到自己知道路径的地址后,配置环境变量:

vim /etc/profile

我解压的地址是/etc/jenv:

Jenv解压后
Jenv解压后

所以,我们环境变量就这样写:

# Jenv
export PATH="/etc/jenv/bin:$PATH"
eval "$(jenv init -)"

之后,按esc在输入:wq保存并退出。之后,你可以重启终端,也可以重载配置使JDK环境变量生效。

如何使用Jenv

Jenv的使用很简单,利用配置JDK8的方法,我下载了JDK11,存储地址是/ZuluJDK/JDK11,我们添加到Jenv里:

jenv add /ZuluJDK/JDK11
添加
添加

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

remove多余名称
remove多余名称

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

jenv versions
jenv管理的JDK版本
jenv管理的JDK版本

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

jenv local 11

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

openjdk version "11.0.10" 2021-01-19 LTS
OpenJDK Runtime Environment Zulu11.45+27-CA (build 11.0.10+9-LTS)
OpenJDK 64-Bit Server VM Zulu11.45+27-CA (build 11.0.10+9-LTS, mixed mode)

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • JDK的选择和下载
  • 配置JDK到环境变量
  • JDK多版本随意切换--Jenv配置
    • 什么是Jenv
      • 如何配置Jenv
        • 如何使用Jenv
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档