1. 程式人生 > >MacBook pro下安裝兩種版本的jdk並切換

MacBook pro下安裝兩種版本的jdk並切換

1. 問題

        最近從Linux平臺下轉戰Mac OS,在這個平臺下配置android開發環境和android原始碼編譯環境。從android open source project上的資訊可以看出,編譯android 5.x的原始碼需要jdk 1.7的環境。

Java Development Kit (JDK)

Please note, since there are no available supported OpenJDK 8 packages for Ubuntu 14.04, the Ubuntu 15.04 packages must be 
installed manually. See JDK for Ubuntu LTS 14.04 for precise instructions.

The master branch of Android in AOSP: Ubuntu - OpenJDK 8, Mac OS - jdk 8u45 or newer
Android 5.x (Lollipop) - Android 6.0 (Marshmallow): Ubuntu - OpenJDK 7, Mac OS - jdk-7u71-macosx-x64.dmg
Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat): Ubuntu - Java JDK 6, Mac OS - Java JDK 6
Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu - Java JDK 5


        於是我安裝了Mac版的jdk 1.7(安裝過程很簡單,下載dmg包之後直接雙擊就好了,預設的路徑是/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home)。

        當我搭建好原始碼編譯的環境後,準備再搭建一個android開發環境(android studio),但是在裝好android studio之後,我發現最新版的android studio只支援jdk 1.8以上的版本。這樣的話我就不能同時擁有原始碼編譯環境和開發環境了。我詢問了一下身邊的朋友,他們的做法是建立兩個賬戶,一個平時使用,另一個專門用於android原始碼編譯。這種方法的缺點是切換的時候要登出另一個賬戶,我可不想這麼麻煩,於是我想到了一個辦法:在系統裡安裝兩個版本的jdk,使用的時候通過修改環境變數進行切換,這樣就可以在同一個使用者下進行版本切換了。

        我查了一下資料,看到網上有人提出一種方法:安裝多個版本的jdk,使用alias命令對版本切換的命令重新命名,然後再使用的時候直接呼叫命令的別名就可以了(具體參見http://chessman-126-com.iteye.com/blog/2162466)。關於這個alias命令,從字面上看就是別名的意思,使用者可利用alias,自定指令的別名。(從這一點來看,Mac OS和Linux差不多嘛)。

2. 解決方案

        在Mac OS下開啟終端,輸入如下命令:

vi .bash_profile
        這個命令執行完了會進入bash_profile檔案裡,我們先敲一下鍵盤上的“i”,讓它進入insert模式,然後輸入以下內容(這裡要依據你安裝的不同的jdk版本來輸入,我的電腦上先安裝了jdk 1.7,之後又安裝了jdk 1.8,我們要先弄清楚他們的目錄在哪裡然後再編輯bash_profile檔案,查詢jdk目錄可以使用命令/usr/libexec/java_home -v,因為電腦裡安裝了多個版本的jdk,如果只輸入上述命令的話他只會告訴你最近一次安裝的jdk的目錄在哪裡,因此,要想查詢不同版本的jdk目錄,應該在“-v”後面空一格再輸入1.7或者1.8或者別的什麼版本號就可以):
# 設定 JDK 7
export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7`
# 設定 JDK 8
export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8`

#預設JDK 7
export JAVA_HOME=$JAVA_7_HOME

#alias命令動態切換JDK版本
alias jdk7="export JAVA_HOME=$JAVA_7_HOME"
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
        最後我們使用命令
source .bash_profile
        使之生效就可以了。

3. 實現效果

        先看一下當下的jdk版本

liuyunhaodeMacBook-Pro:~ liuyunhao$ java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
        然後我們使用jdk7這個命令來改變當前的jdk版本,在終端輸入“jdk7”即可,然後再檢視版本:
liuyunhaodeMacBook-Pro:~ liuyunhao$ jdk7
liuyunhaodeMacBook-Pro:~ liuyunhao$ java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

        成功!

相關推薦

MacBook pro安裝版本jdk切換

1. 問題         最近從Linux平臺下轉戰Mac OS,在這個平臺下配置android開發環境和android原始碼編譯環境。從android open source project上的資訊可以看出,編譯android 5.x的原始碼需要jdk 1.7的環境。

Java【MacBook pro安裝版本jdk切換

1. 問題         最近Mac OS電腦需要配置Hadoop環境,需要用到jdk 1.7。 Java Development Kit (JDK)   Please note, since there are no available supported 

Mac 安裝多個版本jdk切換

一、Mac下檢視已安裝的jdk版本及其安裝目錄二、安裝多個jdk後配置1、開啟終端,輸入:/usr/libexec/java_home -V     注意:輸入命令引數區分大小寫(-v是不對的,必須是-V)在Mac OS下開啟終端,輸入如下命令:vi .bash_profil

win10系統安裝版本JDK

      最近寫專案用到了spring5.0的框架,總所周知 spring5 是基於jdk1.8環境的。而目前我本機上的 jdk1.7 環境就不太適合了。但是公司專案還是要用到,所以索性就安裝兩個版本的jdk,以便隨時切換。 步驟: 1.從官網下載新的安裝包 jdk1.

MAC安裝版本JDK切換方式

lin 切換jdk版本 ber 方便 ida 不支持 itl 相關 pro 環境: MAC PRO,OS X 10.11.6,64位 歷史: 過去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,並且OS X 10.7 開始系統並不自帶(而

手把手教你如何基於Anaconda安裝Tensorflow(Windows和Linux版本

現在越來越多的人工智慧和機器學習以及深度學習,強化學習出現了,然後自己也對這個產生了點興趣,特別的進行了一點點學習,就通過這篇文章來簡單介紹一下,關

linux 軟體安裝方式 —— 原始碼(編譯、安裝),編譯好的二進位制(直接安裝

我們以 GPG(加密工具)為例來說明兩種安裝方式的區別: 原始碼(Source code releases,名稱中則會含有src等說明資訊,tarball:source),先編譯再安裝 ./c

Windows安裝jdk

提示:務必測試第五條。若出現第六條的情況,請自行更改 1 . 準備兩個版本的jdk我的兩個jdk路徑為: 1、D:\jdk1.7.0_80 2、D:\Program Files\Java\jdk1.8.0_111 2 . 設定兩個子JAVA_HOME

手把手教你如何安裝Tensorflow(Windows和Linux版本

     現在越來越多的人工智慧和機器學習以及深度學習,強化學習出現了,然後自己也對這個產生了點興趣,特別的進行了一點點學習,就通過這篇文章來簡單介紹一下,關於如何搭建Tensorflow以及如何進行使用。建議的話,還是要學習了一點Python基礎知識和Linux知識是最好的

如何在Linux—ubuntu16.04版本安裝JAVA環境(jdk&eclipse)

   說在前面:隨著Linux作業系統的不斷完善,在很多情況下,程式設計師的選擇也不僅僅侷限於windows系列作業系統,Linux的操作更加快捷便利,很平常的一個apache Web伺服器的部署可能windows要花很長時間,而ubuntu提供的apt-get

windowsjdk版本切換安裝多個版本jdk

由於專案需求需要安裝兩個jdk,在網上搜索了一大堆,很多都是沒用的,在Google上搜到一種方法,親測可用。 老版本jdk6,新安裝jdk1.8。 jdk1.8直接安裝即可,安裝完後,更換環境變數JAVA_HOME至1.8,直接檢視Java版本,發現已更換至1.8,。但是想

PHP5在Apache模式的安裝

  PHP 5.0.0 和PHP 4.0.38 於2004年7月13日同時釋出,這是一個值得我們PHP愛好者的一大喜訊。期盼已久的PHP5終於出來了,我們可以更進一步的享受PHP新的功能和使用開發的樂趣。  我也在第一時間用上了PHP5,下面簡要介紹一下我的安裝過程(只講述

CentOS安裝個或多個Tomcat7

tomcat1。安裝JDK官網下載,或者用winscp工具下載後解壓wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.orac

linux系統安裝個或多個tomcat

cat base 自己 http HR header 變量 cti 解壓 編輯環境變量:vi /etc/profile 加入以下代碼(tomcat路徑要配置自己實際的tomcat安裝目錄) ##########first tomcat########### CATALINA

關於電腦安裝多個版本JDK後使用時的切換

安裝 build 兩種方法 期望 保存 span 版本 查看 nbsp 轉自:https://www.cnblogs.com/yanzige/p/5377332.html 具體操作和描述如下(前兩種方法都是沒有成功的) 原本安裝了jdk1.7,環境變量也是配置的1.7相關路

Win7安裝Flash低版本

版本 ftw PC thread AC play view med wow64 我把HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer\SafeVersions中高於要裝的版本的項目都刪了,還是不行。 看了這個帖子後發現,原

安裝版本的python安裝包,後安裝的python程序打開時閃退

bsp 卸載 雙擊 python的安裝 環境變量 系統默認 電腦 3.6 路徑 1.環境變量的問題 (Win7)右鍵打開“計算機”的屬性設置→高級系統設置→環境變量。 在系統變量中的path中,編輯,在末尾加入Python的安裝路徑“F:\Python27”, 路徑與

Centos7環境安裝Mysql5.7版本

-o ins .com sbin 數據庫密碼 庫文件 用戶 sku mysql安裝 實驗環境: VMware Workstation12 Centos-7-x86_64系統(ip地址:192.168.5.132)(2G內存 2個處理器) 使用軟件:boost_1_59

Macbook pro安裝Android studio

安裝AS之前先安裝JDK參考https://blog.csdn.net/transformed/article/details/82316815   以下內容轉載自https://blog.csdn.net/lzp2015/article/details/78336432,親測有效

再次探究SSH框架struts配置的區別

眾所周知,在ssh框架下,struts有兩種配置方式。一種是直接自己進行配置,另外一種是把事務交給Spring。一般來說,SSH的框架推薦使用後者方式進行配置,從而方便進行aop管理等操作。 那麼,這兩種方式究竟有何區別?本文試從兩個方面對此進行討論:一是兩者在配置上的差異,二是兩者在執行原