您的位置:首页 > 编程语言 > Java开发

mac 上使用jenv 管理的多个java 版本

2016-11-23 18:09 447 查看
由于服务器是java1.7, mac上是1.8,因此mac编译的java代码会在服务器上报错。因此,需要修改mac上java版本,自己折腾了很久,放弃,决定使用jenv 管理! 结果是非常方便

使用步骤:

1、安装 jenv

2、安装各个版本的java

3、设置java路径

4、关闭控制台,重新打开(restart a new console after adding configuring the jenv)

5、 jenv local ***** (记住这个命令,经常使用。前面的步骤都是一劳永逸的。)

下文是转载,感谢原作者。
http://boxingp.github.io/blog/2015/01/25/manage-multiple-versions-of-java-on-os-x/
基本使用:

在Mac OS X下使用Homebrew安装jEnv:

1

$ brew install jenv

安装成功后需要进行一下简单的配置,让它可以起作用:

使用Bash的情况

12

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

使用Zsh的情况

12

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

好了,jEnv已经安装好了,让我们来看一下它找见哪个Java版本了:

12

$ jenv versions
* system (set by /Users/bxpeng/.jenv/version)

它只找到了系统默认的Java,即使我已经下载了其他版本的Java。
*
表示当前选择的版本。

和rbenv不同的是,jEnv不能自己安装任何版本的Java,所以需要我们手动安装好之后再用jEnv指向它们。

安装Java 6,需要在Apple进行下载。它将安装到
/System/Library/Java/JavaVirtualMachines/
下; 安装Java 7,可以在Oracle进行下载.它将安装到
/Library/Java/JavaVirtualMachines/
下; 安装Java 8,可以在Oracle进行下载.它将安装到
/Library/Java/JavaVirtualMachines/
下。

使用
jenv add
将Java 6加入jenv中:

12
3
4

$ jenv add /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/
1.6 added
1.6.0.65 added
oracle64-1.6.0.65 added

运行
jenv versions
时会显示:

12
3
4
5

$ jenv versions
* system (set by /Users/bxpeng/.jenv/version)1.6
1.6.0.65
oracle64-1.6.0.65

同样的,使用
jenv add
将Java 7加入jenv中:

12
3
4

$ 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

12
3
4

$ 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

现在运行
jenv versions
会显示:

12
3
4
5
6
7
8
9
10
11

$ jenv versions
* system (set by /Users/bxpeng/.jenv/version)1.6
1.6.0.65
oracle64-1.6.0.65
1.7
1.7.0.71oracle64-1.7.0.711.8
1.8.0.25
oracle64-1.8.0.25

对于博主这种不是处女座的人来说,也觉得需要对版本再管理一下,使用
jenv remove
可以从jEnv中去掉不需要的Java版本:

12

$ jenv remove 1.6
JDK 1.6 removed

整理后,再运行
jenv versions
会显示:

12
3
4
5

$ jenv versions
* system (set by /Users/bxpeng/.jenv/version)1.6.0.65
1.7.0.711.8.0.25

选择一个Java版本,运行
jenv local
,例如:

12
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)

DangDangDangDang,我们已经成功地指定了某文件夹中local的Java版本。

你可以运行
jenv global
设置一个默认的Java版本,运行
jenv which java
显示可执行的Java的完整路径。

你也可以在特定的文件夹下使用.java-version文件来设定Java的版本。当我需要在Project中使用Java 6时,我仅仅需要把
1.6.0.65
作为内容保存在.java-version文件中,当我进入该文件夹时jEnv会自动地帮助我设定local的Java的版本。

没错,我们现在有了Java的多个版本,并且可以在它们之间轻松切换。更多的使用方法可以在jEnv官网的官网查询到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: