NarwhalをCentOS上で動かす時のメモ
CentOS release 5.5 (Final)
CentOSでNarwhalを動かそうと思ったら
$ js Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object
というエラーが出ます。rhinoがOpenJDKでは上手く動かないのが原因みたいです。
という事でOracleからJDKをとってきて、こちらをデフォルトにする必要があります。
1.JDKのrpm.binファイルをダウンロード
http://www.oracle.com/technetwork/java/javase/downloads/index.html
適当なディレクトリで実行する。
# chmod +x jdk-6u21-linux-i586-rpm.bin # ./jdk-6u21-linux-i586-rpm.bin
2.環境変数を設定する。
# vi /etc/profile ----追記 export JAVA_HOME=/usr/java/jdk1.6.0_21 export PATH=/usr/java/jdk1.6.0_21/bin:$PATH export CLASSPATH=.:/usr/java
# alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_21/bin/java 20000 # alternatives --install /usr/bin/javac javac /usr/java/jdk1.6.0_21/bin/javac 20000
3."2"をデフォルトのjava、javacに設定する
# alternatives --config java 2 プログラムがあり 'java' を提供します。 選択 コマンド ----------------------------------------------- + 1 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java * 2 /usr/java/jdk1.6.0_21/bin/java Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2 # alternatives --config javac 2 プログラムがあり 'javac' を提供します。 選択 コマンド ----------------------------------------------- + 1 /usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin/javac * 2 /usr/java/jdk1.6.0_21/bin/javac Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2
これで、narwhalのjsコマンドが利用可能になります。
$ js Rhino 1.7 release 3 PRERELEASE 2009 12 12 js> print('Hello') Hello $ js path/to/narwhal/examples/hello Hello, World!