分散型ロボットの動作検証を行っている最中に、現在のJDK1.X.Xシリーズ には重大なバグが存在し、JDK1.X.Xシリーズで動作させるのは困難である との結論にたっしました(;_;)。
このため、分散型WWWロボットの実験では、Java 2 SDK Production Release (99/01/20現在の最新版はDev6)以降の最新版を使うことになりました。 以下で、このインストール方法を紹介しますので、 皆様のPCのSolaris2.6上へインストールをお願いいたします。_(_o_)_
なお、各サイトで独自にご用意いただいたマシンをご利用される場合には、 http://sunsolve.sun.co.jp/pub-cgi/jp/pubpatchpage.plより、該当 OSバージョンのパッチを入手し、パッチ当てを行った後、 http://www.sun.com/solaris/java/index.htmlより 該当システム に対応する Java 2 SDK をインストール願います。
# tar xvf jdk1.2_patches_i386.tar ---- パッチを展開します。 # uncompress 106248-06.tar.Z 105182-10.tar.Z 105491-04.tar.Z ---- Solaris2.6Intel版に必要なパッチ3つを展開します。 ---- (参考)必要なパッチは上記8の画面から入手できる Release Notesに詳細が書かれています # tar xvf 106248-06.tar ..... # tar xvf 105182-10.tar ..... # tar xvf 105491-04.tar ..... # cd 105182-10 ; ./installpatch . WARNING: /usr/sbin/patchadd is being used to install this patch. Installpatch will be removed from Solaris patches in the next release of Solaris. Checking installed patches... Executing prepatch script... If possible, perform patch installation in single user mode. If this can not be done, we recommend having the system in as quiet a state as possible: no users logged on, no user jobs running. Do you wish to continue this installation {yes or no} [yes]? (by default, installation will continue in 60 seconds) yes --- yesと入力 Verifying sufficient filesystem capacity (dry run method)... Installing patch packages... Patch number 105182-10 has been successfully installed. --- successfuly installed.と出ているので成功 See /var/sadm/patch/105182-10/log for details Patch packages installed: SUNWcar SUNWcsr SUNWcsu SUNWhea # cd ../105491-04 ; ./installpatch . WARNING: /usr/sbin/patchadd is being used to install this patch. Installpatch will be removed from Solaris patches in the next release of Solaris. Checking installed patches... Executing prepatch script... Verifying sufficient filesystem capacity (dry run method)... Installing patch packages... Patch 105491-04 failed to install due to a failure in pkgadd. See /var/sadm/patch/105491-04/log for details --- もしこのようにfailure(失敗)してlogを見よと表示 されたら、catで内容を確認 # cat /var/sadm/patch/105491-04/log This appears to be an attempt to install the same architecture and version of a package which is already installed. This installation will attempt to overwrite this package. PaTcH_MsG 1 Patch number 105491-04 is superceded by the already applied 105491-05. --- 既にこのパッチより新しいパッチが当たっている ことを示しているので問題無しと判断! # cd ../106248-06 ; ./installpatch . WARNING: /usr/sbin/patchadd is being used to install this patch. Installpatch will be removed from Solaris patches in the next release of Solaris. Checking installed patches... Verifying sufficient filesystem capacity (dry run method)... Installing patch packages... Patch number 106248-06 has been successfully installed. --- successfuly installed.と出ているので成功 See /var/sadm/patch/106248-06/log for details Patch packages installed: SUNWxwcft SUNWxwfnt SUNWxwplt SUNWxwslb
# uncompress Solaris_JDK_1.2_01_dev06.i386.tar.Z # tar xvf Solaris_JDK_1.2_01_dev06.i386.tar ..... ----- 注意! tar xvf ... -C directoryの ように指定すれば、解凍先をdirectoryに指定 できますが、この指定をするとパス名の長い ファイル2つがextractできなくなってしまいます。 従って,解凍先にcd した上で、tar xvf ... のみの指定で解凍願います。(990120-1830追加) ----- 注意! gnuのtarではうまく解凍できない場合があ るようです。/bin/tarをご利用下さい。 (990120-1915追加)
# pkgadd -d . SUNWjvthr SUNWjvrt SUNWjvdev SUNWjvman SUNWjvdem ----- Java2をインストールします。 ----- /usr/java1.2にインストールされます。 ----- 途中で[y/n]を聞かれますがyと入力 ..... Installation ofwas successful. #
# /usr/java1.2/bin/java -version java version "1.2" Solaris VM (build Solaris_JDK_1.2_01_dev06_fcsV, native threads, sunwjit) ----- このように表示されればOK
追加コメント:Release Notesに記載されているように JDK1.1は /usr/java1.1 にインストールされており、/usr/javaからリンクが張られています。これに 対し、Java2(JDK1.2)は /usr/java1.2にインストールされ、/usr/javaから はリンクされておりません。これは、Java1.1とJava1.2の間に互換性がない ためです。分散型WWWロボットでは、Java1.2を使いますが、/usr/javaから リンクがなくても使えるように設定しますので、現段階では、Release Notes に記載されております以下の作業を行う必要はありません。
# /usr/bin/mv /usr/java /usr/java.oldlink # /usr/bin/ln -s /usr/java1.2 /usr/java