AdoptOpenJDK8のインストール方法¶
- デフォルトのJavaバージョン(11)がインストールされている場合は、Java8インストール後に下記手順で切り替える
$ sudo update-alternatives --config java
Ubuntu¶
- 下記の作業メモはDebian10での実行だが、Ubuntuでも同様でOK
- Debian10は公式リポジトリにopenjdk-8-jdkのパッケージがなかったので、adoptopenjdk8をインストールした
$ sudo apt update $ sudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common $ wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add - $ sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ $ sudo apt update $ sudo apt install adoptopenjdk-8-hotspot $ java -version openjdk version "1.8.0_232" OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_232-b09) OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.232-b09, mixed mode)
- なお、jreをインストールしたい場合は、adoptopenjdk-8-hotspot-jre を指定すればよいらしい。下記で確認。
https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/dists/buster/main/binary-amd64/Packages
- Ubuntu20.04で上記手順でインストール後の確認
$ dpkg -l | grep adoptopenjdk ii adoptopenjdk-8-hotspot 8u262-b10-2 amd64 OpenJDK Development Kit 8 (JDK) with Hotspot by AdoptOpenJDK
Raspbian buster¶
- 2020/07/16の確認で、aptにてopenjdk-8-jdkをインストールすると、途中でエラーになるので、adoptopenjdk8をインストールした
- 参考
https://qiita.com/PINTO/items/612718c0ce4f1def6c6e
- pkg_install_raspbian.shを使って環境を整えている場合、下記パッケージのインストールだけでOK
$ sudo apt install -y apt-transport-https software-properties-common $ wget -O - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add - $ sudo vim /etc/apt/sources.list 以下を追加 deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main Release $ sudo apt update $ sudo apt install adoptopenjdk-8-hotspot $ java -version openjdk version "1.8.0_212" OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1+rpi1-b01) OpenJDK Client VM (build 25.212-b01, mixed mode)
Mac¶
- openrtpを起動するためにインストールした
- Homebrewを使ってインストールする
- インストール手順は、下記Homebrewのサイトでrubyコマンドでのインストールスクリプトが表示されているので、それをコピペして実行すれば良い
https://brew.sh/index_ja
- homebrew-cask-versionsの導入 ・・・最新バージョン以外のJavaインストールに必要
$ brew tap homebrew/cask-versions
- java8はライセンス関係でインストールできないとのこと
- AdoptOpenJDK8をインストールする
$ brew cask install adoptopenjdk8
Windows¶
- OracleのサイトからJDK8のダウンロードが可能なので、通常はこれを利用しているはず
- 下記は、OpenRTM-aist 1.2.2版のmsiに含めているJREの話
- OpenRTM-aist 1.2.2 のmsiに含めているJREは、AdoptOpenJDK8のJREとなっている
- 詳細は下記readme.txtに記載 ・・・ブラウザでアクセスすると文字化けで読めないので、下記に抜粋
https://openrtm.org/svn/OpenJDK-jre/trunk/openjdk_jre/readme.txt▼変更(2020/04/20記) ・OpwnRTM-aist1.2.2版のWindows用インストーラmsiに含めるJREは、AdoptOpenJDKが提供しているバイナリを利用する https://adoptopenjdk.net/index.html ・これまで使用していたバイナリは現時点(2020/04)よりだいぶ前からダウンロードできなくなり、 バージョンが古いままでセキュリティアップデートが全く当たっていないため ・提供されるJREは64bit版、32bit版があるが、これまでと同様に32bit版JREを64bit版msiに含める ⇒OpenRTM-aist2.0からは64bit版のみのサポート予定なので、今回は最小変更にて対応したいため 1)Windows用 x86 のzipファイルをダウンロードする OpenJDK8U-jre_x86-32_windows_hotspot_8u252b09.zip 2)ダウンロードしたzipを展開し、サブディレクトリとしてjreを追加してzipで固める。jdk8u252-b09-jre.zip jdk8u252-b09-jre └─jre ←★追加 │ │ ASSEMBLY_EXCEPTION │ LICENSE │ release │ THIRD_PARTY_README │ ├─bin └─lib
問題点¶
- AdoptOpenJDK8環境ではOpenRTM-aist-Javaのdocのビルドでエラーになる(2020/03、Ubuntu18.04で確認)
[javadoc] /root/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/Constants.java:4: error: no tag name after @ [javadoc] * {@.ja sun-orb ????} [javadoc] ^ [javadoc] /root/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/Constants.java:5: error: no tag name after @ [javadoc] * {@.en Constants for sun-orb} [javadoc] ^ [javadoc] /root/OpenRTM-aist-Java/jp.go.aist.rtm.RTC/src/jp/go/aist/rtm/Constants.java:14: error: no tag name after @ [javadoc] * {@.ja Manager?????????????????????????} : [javadoc] 100 errors [javadoc] 100 warnings BUILD SUCCESSFUL
- 片見さんにご連絡したところ、以下のお返事を頂く
javadocのエラーですが、 カスタムタグを使うために、 タグレットを使っております。 以下にjavaファイルとclassファイルがあります。 OpenRTM-aist-Java/jp.go.aist.rtm.RTC/util #classファイルで準備してありますので、 #AdoptOpenJDK8でビルドする必要があります。 このディレクトリにjavaファイルビルドのための buildTaglet.sh がありますので、 これを実行してから 再度、ビルドをお願いできないでしょうか?
- 河内の返事
教えて頂いたbuildTaglet.shを実行したところ、com.sun.javadocが無いというエラーに なります。 どうすればよいでしょうか。 ---- EnOffTaglet.java:2: error: package com.sun.javadoc does not exist import com.sun.javadoc.Tag; ^ EnOffTaglet.java:3: error: package com.sun.tools.doclets does not exist import com.sun.tools.doclets.Taglet; ^ : ----- こちらのビルドはDockerを使い、Ubuntu18.04環境にて行っています。
- ここまで