使用Jenv管理Java版本

使用Jenv管理Java版本

使用Java时会接触到不同的版本。一般情况下是配置JAVA_HOME,指定不同的Java版本,但是这需要人为手动的输入。如果又要选择其他版本,就需要对JAVA_HOME重新进行设置。

JEnv 为解决此问题诞生了。

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

安装

对于 Linux / OS X 系统可以从github clone 源码安装:

1
$ git clone https://github.com/gcuisinier/jenv.git ~/.jenv

如果是Mac OS X 用户,也可以通过 Homebrew 包管理器安装:

1
$ brew install jenv

配置

在安装完成后,需要对jenv配置:

1
2
3
4
5
6
7
# Bash
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile

# Zsh
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
$ echo 'eval "$(jenv init -)"' >> ~/.zshrc

usage

添加 jdk

通过jenv add命令,将已安装的JDK添加到jenv中。

1
2
3
4
5
6
7
8
> jenv add /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/
1.7 added
1.7.0.71 added
oracle64-1.7.0.71 added
> jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/
1.8 added
1.8.0.25 added
oracle64-1.8.0.25 added

list all jdk

通过jenv versions命令查看已添加的JDK

1
2
3
4
5
6
7
8
> jenv versions
* system (set by /Users/bxpeng/.jenv/version)
1.7
1.7.0.71
oracle64-1.7.0.71
1.8
1.8.0.25
oracle64-1.8.0.25

通过jenv add 添加JDK时,每个JDK添加了不止一个版本link,对于多余的版本使用jenv remove可以从jenv中去掉.

1
2
> jenv remove 1.6
JDK 1.6 removed

设定全局Java版本

1
2
3
4
5
> jenv global 1.8.0.25
> java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

设置本地文件夹Java版本

1
2
3
4
5
> jenv local 1.8.0.25
> java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

开启插件

开启对JAVA_HOME的控制。

1
$ jenv enable-plugin export

如果使用的是maven,请运行以下命令:

1
$ jenv enable-plugin maven

支持的插件:

1
2
3
4
5
6
7
8
9
10
11
12
13
$ jenv plugins
ant
export
golo
gradle
grails
groovy
lein
maven
sbt
scala
springboot
vlt