碳貓工程師成長日記

吾生也有涯,而知也無涯。以有涯隨無涯,殆已。

Those who bring sunshine into the lives of others, cannot keep it from themselves.


Hi, I'm CarbonKuo, a software engineer.

JDK7 和 JDK8 於 Mac同時安裝以及切換

有時候開發專案,會因為客戶的需求,會需要再特定版本下開發,但又有些客戶要不一樣的版本,因此為了解決這個困擾,我就開始想辦法解決這個問題。

由於我是使用Mac作為開發機,因此本篇會以Mac環境配置為主

JDK我們可以透過 Oracle 的官方網站下載且安裝。這個步驟我們就不多做解釋了。

Mac的JDK都是安裝到一個指定的目錄/Library/Java/JavaVirtualMachines/

$ cd /Library/Java/JavaVirtualMachines/
$ ls

接著我們可以在這個目錄下查看自己安裝的JDK。 一般來說,我們應該會看見:

jdk1.7.0_xx.jdk  jdk1.8.0_xx.jdk

環境設定

$ vim ~/.bash_profile

如果沒有 .bash_profile 檔案那麼請使用 vim ~/.bash_profile 指令會創建這個檔案

緊接著進行環境變數設定,輸入以下指令:

$ export JAVA_7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
$ export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
# 預設為JDK8
$ JAVA_HOME=$JAVA_8_HOME

$ PATH=$JAVA_HOME/bin:$PATH
$ CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
$ export JAVA_HOME PATH CLASSPATH

在Unix shell中,source命令可簡寫為一個點號也被稱為點命令(.),是執行或開啟電腦檔案的命令。

$ source ~/.bash_profile

設定/etc/profile檔案

在進行這個步驟的時候,可能會有唯讀的狀況出現。可以透過 :wq! 來解決。

$ vim /etc/profile
$ alias jdk7="export JAVA_HOME=$JAVA_7_HOME"
$ alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
source /etc/profile

緊接著即可在終端機輸入jdk7以及jdk8 進行JDK的切換。

$ jdk7
$ java -version
$ java version "1.7.0_80"
$ Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
$ Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
$ jdk8
$ java -version
$ java version "1.8.0_201"
$ Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
$ Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

本篇的學習參考資料 環境變數JAVA_HOME, CLASSPATH和PATH的作用

最近的文章

Memcached vs Redis 適用的狀況思考

常見的記憶體暫存服務:Memchached 還是 Redis?隨著業務需求的擴張以及業務的多樣性,這時候我們的系統就需要增加新的功能,有時候是短時間需要處理大量請求的系統,又是較低硬體設備成本的選擇,該用哪一個?又或者需要改進性能的時候,這是每次技術討論中最常見的一個問題。每當性能需要改善時,採用暫存常常是邁出的第一步。那麼,選擇Memcached 或者 Redis 通常就是需要考慮的地方。哪個能給我們提供更佳的性能?它們的優點和缺點又是什麼?簡單介紹:RedisRedis ( REmot...…

繼續閱讀