HOME / コンピュータTips / Solaris / インストール / java
Date: 2010/07/05 | | Tags: Solaris, opensolaris, java, install, インストール, 最新
javaは、様々なことに利用されているので、セキュリティfixはなるべく早めにしておきたいものです。
OpenSolaris/Solarisでは最初からjdk(java development kit)がインストールされていますが、特にOpenSolarisでは最新javaの追っかけが何故かWindowsよりも面倒です。
これらを踏まえてドキュメント化してみました。
jreはランタイムであって、基本、javaのアプリを実行するにはこれだけで足るものです。一方jdkは、開発キットでそれ以外のツール、ライブラリを含みます。
OpenSolaris/Solarisでは、標準でjdkがインストールされています。jdkはjreのスーパーセットです。
〜未作業のため、割愛〜
jdkのダウンロードは下記から出来ます。
java development kit(JDK)を選び、Solaris x86(32bit)と、Solaris x64(64bit)をダウンロードします。
Solaris x64の方は、Solaris x86がインストールされてることを前提としたパッケージになっているため、jarライブラリなどは含まれておりません。最近のコンピュータはほとんど64bitであるため、両方のダウンロードをすることになります。
次はインストールです。/tmpに、ダウンロードしたファイルがあるとします。
(例)
jdk-6u20-solaris-i586.sh jdk-6u20-solaris-x64.sh
(手順例)
cd /usr/jdk pfexec /bin/sh jdk-6u20-solaris-i586.sh pfexec /bin/sh jdk-6u20-solaris-x64.sh
この例では、/usr/jdk/jdk1.6.0_20に、javaがインストールされます。OpenSolarisでは、/usr/jdk/instances/jdk1.6.0に実体が含まれるのですが、パッチバージョンに関しては、含まれないようなので、ここではあえて/usr/jdk/jdk1.6.0_20としてインストールしています。
このままでは明示的にJAVA_HOMEなどを設定し、手で叩かないとならないので、シンボリックリンクを変えてデフォルトのものを変えてみます。
cd /usr/jdk pfexec rm latest && pfexec ln -s jdk1.6.0_20 latest cd /usr pfexec rm java && pfexec ln -s jdk/jdk1.6.0_20 java
概ね以上です。
上記のインストール方法は、IPSとは別の方法で入れているため、IPSを利用したOSのバージョンアップや、関連ファイルの変更を行うと、OSの物に戻ってしまいます。
とはいえ、パッケージでインストールされているjavaにたいして、依存関係があるソフトウェアが存在しているので、OS標準のjavaのアンインストールはできません。
pfexec pkg uninstall -vn runtimejava
Creating Planpkg: 次のパッケージが依存しているため、'pkg://opensolaris.org/runtime/java@0.5.11,5.11-0.134:20100302T044237Z' を削除できません: pkg://opensolaris.org/network/dhcp/dhcpmgr@0.5.11,5.11-0.134:20100302T042232Z pkg://opensolaris.org/developer/java/jdk@0.5.11,5.11-0.134:20100302T014624Z pkg://opensolaris.org/library/java/demo@0.5.11,5.11-0.134:20100302T033314Z pkg://opensolaris.org/service/resource-pools/poold@0.5.11,5.11-0.134:20100302T050247Z pkg://opensolaris.org/service/network/dhcp@0.5.11,5.11-0.134:20100302T045709Z pkg://opensolaris.org/SUNWj6rt@0.5.11,5.11-0.133:20100216T080552Z pkg://opensolaris.org/runtime/java/runtime64@0.5.11,5.11-0.134:20100302T044457Z
依存の根っこにあるものを手で変えると色々手で何かをしなくてはならないのは、RedhatLinux系とあんまり変わらない感じです。これらの関連アップデート時は、作ったシンボリックリンクが壊されないように、忘れずに作業をしなくてはなりません。
ところで、IPSではjdkとjreは、どちらもjdk以下のディレクトリに掘られています。runtime/javaをインストールすると、jdkのディレクトリに、jreの必要な物が入っているようです。