熟悉Python的人,看到j(luò)env這個名字就很容易明白這個是做什么的,下面記錄一下使用方法
1. 簡單概述
jenv是一個Mac os 下的java多版本的管理工具.和Pyenv的作用同一系列的.
需要注意點
和Pyenv不同的是, jenv不能自己安裝任何版本的Java,
所以需要我們手動安裝好之后再用jEnv指向它們。
2.安裝步驟
2.1 手動安裝你需要的 Java版本,默認(rèn)路徑即可
2.2 配置
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
2.3 添加java路徑
$ jenv add /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/
>>> oracle64-1.7.0.71 added
1.7.0.71 added
1.7 added
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/ 是 安裝java的路徑
如果沒有在配置好如上的jenv環(huán)境變量的話摧茴,在下邊的添加JAVA_HOME時會遇到如下錯誤:
ln: /Users/demo/.jenv/versions/oracle64-1.7.0.45: No such file or directory
如果已經(jīng)添加但是仍沒有生效的話机久,可以試一下重新加載bash_profile
source ~/.bash_profile
然后重復(fù)步驟2.3即可
2.4 刪除 java 版本
你會發(fā)現(xiàn)添加新版本時,每個版本都會一次性自動加入 3 個不同版本坊秸,比如添加 1.8 的時候報告:
oracle64-1.8.0.101 added
1.8.0.101 added
1.8 added
我們沒有必要保留這么多版本谜疤,其實它們都指向同一個 JDK,我們可以把 1.8 以外的兩個版本刪除:(沒有測試)
$ jenv remove oracle64-1.8.0.101
JDK oracle64-1.8.0.101 removed
$ jenv versions
* system (set by /Users/kmyhy/.jenv/version)
1.8
1.8.0.101
$ jenv remove 1.8.0.101
3. 使用
3.1 列出管理的JDK
$ jenv versions
* system (set by /Users/demo/.jenv/version)
1.7
1.7.0.45
1.8
1.8.0.131
oracle64-1.7.0.45
oracle64-1.8.0.131
看起來有點多帽撑,但其實就是1.7泼各、1.8兩個版本的別名。
3.2. 配置全局Java版本
$ jenv global 1.7
3.3 配置當(dāng)前目錄的Java版本
jenv local 1.7
這種方式會只改變當(dāng)前所在目錄的Java版本亏拉,可以通過如下命令取消
jenv local --unset
3.4配置shell實例的版本
這種配置方式扣蜻,只會影響當(dāng)前shell窗口。
jenv shell 1.8
3.5 配置JVM Options(暫時不明白)
$ jenv global-options "-Xmx512m"
or
$ jenv local-options "-Xmx512m"
or
$ jenv shell-options "-Xmx512m"