Android 5.1のビルド中にエラーが発生し、JDK 1.7.xが必要と判明しました。しかし、私のUbuntuには既にJava 1.8.0_362がインストールされています。以下はそのバージョン切り替えの手順です。
1. Java 1.7.0_80をダウンロード
Oracleの公式サイトからJava 1.7.0_80の圧縮ファイルを取得します。
<a href="https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html">Java SE 7 ダウンロードページ</a>
2. 圧縮ファイルを解凍
ファイルを /custom_disk/sdk_tools ディレクトリに配置して解凍します。
user@ubuntu:/custom_disk/sdk_tools$ ls -l total 149952 drwxr-xr-x 4 root root 4096 May 26 19:23 ./ drwxr-xr-x 6 root root 4096 May 26 19:03 ../ -rwxr-xr-x 1 root root 153530841 May 26 19:22 <strong>jdk-7u80-linux-x64.tar.gz*</strong> drwxr-xr-x 8 uucp 143 4096 Apr 10 2015 <strong>java-se-1.7.0_80/</strong>
3. 現在のJavaバージョン確認
現在のJavaバージョン情報を確認するために以下のコマンドを実行します。
user@ubuntu:/custom_disk/sdk_tools$ sudo update-alternatives --display java java - auto mode link best version is /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java link currently points to /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java link java is /usr/bin/java slave java.1.gz is /usr/share/man/man1/java.1.gz /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java - priority 1081 slave java.1.gz: /usr/lib/jvm/java-8-openjdk-amd64/jre/man/man1/java.1.gz
4. Java 1.7.0_80への切り替え
優先度を1090に設定してJava 1.7.0_80に切り替えます。
sudo update-alternatives --install /usr/bin/java java /custom_disk/sdk_tools/java-se-1.7.0_80/jre/bin/java 1090
5. javac, javap, javadocも同様に切り替え
sudo update-alternatives --install /usr/bin/javac javac /custom_disk/sdk_tools/java-se-1.7.0_80/bin/javac 1090 sudo update-alternatives --install /usr/bin/javap javap /custom_disk/sdk_tools/java-se-1.7.0_80/bin/javap 1090 sudo update-alternatives --install /usr/bin/javadoc javadoc /custom_disk/sdk_tools/java-se-1.7.0_80/bin/javadoc 1090
6. 必要に応じてバージョン間の切り替え
必要に応じて各ツールのバージョンを切り替えることができます。
sudo update-alternatives --config java # Javaバージョン間の切り替え sudo update-alternatives --config javac # javacバージョン間の切り替え sudo update-alternatives --config javap # javapバージョン間の切り替え sudo update-alternatives --config javadoc # javadocバージョン間の切り替え
7. JAVA_HOMEなどの環境変数設定
JAVA_HOMEやJRE_HOMEなどの環境変数を設定します。
export JAVA_HOME=/custom_disk/sdk_tools/java-se-1.7.0_80 export JRE_HOME=/custom_disk/sdk_tools/java-se-1.7.0_80/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
8. 切り替えの確認
user@ubuntu:/# 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) user@ubuntu:/# javac -version javac 1.7.0_80 user@ubuntu:/# javap -version 1.7.0_80