前言
在Ubuntu中安裝JDK的方法非常的多,網上現在介紹的很多方法,都不是很清楚,對於初學者,很多都不太明白如何安裝。本篇博客就Ubuntu下安裝JDK進行詳細的講解,這裏使用的Ubuntu版本爲Ubuntu 14.04 x64
本篇博客的主要內容:
- 準備工作
- 安裝JDK
在Ubuntu中安裝JDK之前,Ubuntu中是沒有任何JDK軟件的。如果不確定本機是否安裝JDK,可以在終端使用java -version命令查看:
~$ java -version
如果本機中沒有安裝JDK,將會輸出如下內容:
這個時候就需要去Oracle的官網下載Linux JDK的壓縮包,點擊下載。官網中列舉了全部平臺下各種JDK的安裝包,因爲這裏的開發環境是32位的操作系統,所以選擇jdk-7u55-linux-i586.tar.gz下載即可。如下圖:
當得到下載完成的JDK壓縮包之後,就可以開始準備着手安裝JDK了。
從Oracle官方網站上下載的JDK是一個tar.gz的壓縮包,對於這類壓縮包,可以進入其壓縮文件的目錄下,使用如下命令對其進行解壓縮:
~/Downloads$ tar zxvf jdk-7u55-linux-i586.tar.gz
解壓縮需要一小段時間,這個當解壓縮完成之後,就可以在指定目錄下看到當前解壓縮後的文件夾,這裏使用的JDK-7U55,所以解壓縮後的文件夾是jdk 1.7.0_55,如果是其他版本的JDK,這裏的文件夾名稱並不一樣,如下圖:
在JDK解壓後文件夾的目錄下,將解壓好的jdk 1.7.0_55文件夾使用最高權限移動到/usr/lib/jdk7目錄中,使用如下語句完成jdk 1.7.0_55文件夾的移動:
~/Downloads$ sudo mv jdk1.7.0_55 /usr/lib/jdk7
此時就講jdk複製到了/usr/lib/目錄下了,注意這裏即使沒有jdk7這個文件夾,也可以執行如下命令,系統會自動創建jdk7這個文件夾。
接下來就需要進入配置文件設置JDK環境變量。這裏有兩種選擇,如果修改當前用戶名主文件夾下的.profile文件,則此配置只對當前登錄用戶有效,如果需要對本機所有用戶有效,可以修改/etc/profile文件。這裏使用gedit命令,具體如下:
修改當前登錄用戶配置文件:
~$ sudo gedit ~/.profile
修改系統配置文件:
~$ sudo gedit /etc/profile
這兩個命令均會打開一個文件,這裏修改系統配置文件,如下圖:
在其末尾加上,並保存關閉:
export JAVA_HOME=/usr/lib/jdk7
export PATH=$JAVA_HOME/bin:$PATH
保存好profile文件之後,還需要使系統重新裝載profile文件,這裏可以使用如下兩個命令使Ubuntu重新裝載profile文件,以下兩種方式均可:
使用source命令:
~$ source /etc/profile
使用.命令:
~$ . /etc/profile
配置好環境變量之後,可以使用echo $PATH命令查看當前的環境變量值,保證當前JDK目錄已經被添加到環境變量中,如下:
如果安裝順利,到此時就已經完成Ubuntu下JDK的安裝,可以使用java -version命令查看是否安裝成功,輸出如下:
到此時就完成了Ubuntu下JDK1.7的安裝。
如果需要安裝以前版本的JDK,例如JDK 1.6,從Oracle官網上下載的是bin格式的文件,可以使用sh命令對其進行解壓,然後按照以上的步驟操作即可。如:
~/Downloads$ sh ./jdk-6u45-linux-i586.bin
第三步 ndk
首先必須得到Android NDK的安裝文件,可以直接在Android的官方網站上得到,點擊下載。因爲這裏使用的是32位的Ubuntu,所以下載android-ndk-r9d-linux-x86.tar.bz2。如下圖:
下載完成之後,就得到一個後綴爲tar.bz2的壓縮包,可以在Ubuntu下進行解壓。
得到tar.bz2的壓縮包之後,還需要對這個壓縮包進行解壓。因爲tar是標準的壓縮格式,所以可以直接使用Ubuntu圖形化去解壓縮,右鍵→提取到此處,就可以在當前文件夾下對其進行解壓縮,得到一個android-ndk-r9d文件夾。除了使用Ubuntu提供的圖像化的方法,還可以在終端下,使用tar語句進行解壓縮,同樣可以得到一個android-ndk-r9d文件夾。當前下載的安裝文件在Developer文件夾下,語句如下:
~/Developer$ tar jxvf android-ndk-r9d-linux-x86.tar.bz2
解壓縮完成之後,還需要配置NDK的環境變量。這裏有兩種選擇,如果修改當前用戶名主文件夾下的.profile文件,則此配置只對當前登錄用戶有效,如果需要對本機所有用戶有效,可以修改/etc/profile文件。這裏使用gedit命令,具體如下:
修改當前登錄用戶配置文件:
~$ sudo gedit ~/.profile
修改系統配置文件:
~$ sudo gedit /etc/profile
這兩個命令均會打開一個profile文件,在其中修改系統配置文件,如下圖:
在其末尾加上,並保存關閉:
export ANDROID_NDK=/home/bgxtand/Developer/android-ndk-r9d
export PATH=$ANDROID_NDK:$PATH
這裏的NDK的路徑是/home/bgxtand/Developer,如果不確定具體路徑,可以使用pwd命令進行查看。如下圖:
保存好profile文件之後,還需要使系統重新裝載profile文件,這裏可以使用如下兩個命令使Ubuntu重新裝載profile文件,以下兩種方式均可:
使用source命令:
~$ source /etc/profile
使用.命令:
~$ . /etc/profile
配置好NDK的環境變量,可以使用echo $PATH命令查看當前的環境變量值,確保當前NDK目錄已經被添加到環境變量中,如下:
到此時就完成了Ubuntu下,NDK的安裝,NDK中包含了很多示例代碼,爲了驗證NDK是否安裝成功,可以進入~/android-ndk-r9d/samples/hello-jni/jni目錄下,執行ndk-build命令,效果如下:
執行ndk-build命令之後,有上圖輸出,表示Ubuntu下NKD安裝成功。
第二步 sdk
先下載下來,然後在eclispse 裏配置完,配置環境變量
export ANDROID=/home/frank/桌面/IDE/android-sdk-linux PATH=$PATH:$JAVA_HOME/bin:$ANDROID/tools:$ANDROID/platform-tools記得要
~$ source /etc/profile
使用.命令:
~$ . /etc/profile
另外如果大家安裝的是 amd 64位的ubuntu 安裝好之後 即使你正確配置了 android 的環境變量 應該也還是不可以使用adb 命令的 在終端輸入adb 大概會有這樣一個錯誤提示:
android-sdk-linux_86/platform-tools/adb: 沒有那個文件或目錄。
解決方法:由於是64bit的系統,而Android sdk只有32bit的程序,需要安裝ia32-libs,才能使用。
執行以下命令 方可OK 。
sudo apt-get install ia32-libs
網上也沒有找到合適的方法。
最後還是用google(還是比baidu強啊),雖然沒有找到該庫的安裝方法,但是找到了解決方法:即自己安裝需要的32位庫
$ sudo apt-get install libc6:i386libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386libstdc++6:i386
我本意是運行adb的。運行adb時,發現缺乏libncurses5庫,自己動手,豐衣足食,比葫蘆畫瓢,
sudo apt-get installlibncurses5:i386
在64位下,gcc默認編譯代碼位64位的,但是,如果你想編譯位的,可以用gcc-m32選項,來設置。
不過,不幸的是,會出現錯誤,說找不到/usr/include/features.h文件什麼的。google一下,發現用這種方法:
sudo apt-get installg++-multilib(就這一句有用的)