[ruby]さくらレンタルサーバーにRuby環境をいれてみる(3)
Java&JRuby編
4.java
FreeBSDのJavaはSunのサイトにはないので、下記のサイトからとってくる。
http://www.freebsdfoundation.org/downloads/java.shtml
サーバーのCPUがわからなかったので
% cat /var/run/dmesg.boot | grep CPU
で調べる。i386っぽいですね。tarballの diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2 をさくっとダウンロードして ~/local/src に配置。
% cd ~/local/src % tar zxvf diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2 % mv diablo-jdk1.6.0_07 ~/local/ % vi ~/.bashrc --- 以下を追加 --- + # set Java Setting + JAVA_HOME=$HOME/local/diablo-jdk1.6.0_07 + export JAVA_HOME + PATH=$PATH:$JAVA_HOME/bin + export PATH --- % java -version % javac -version
5.JRuby
% rvm install jruby info: Extracting jruby-bin-1.5.2 ... info: Building Nailgun info: Installing JRuby to /home/ohr/.rvm/rubies/jruby-1.5.2 info: Importing initial gems... info: Installing rake error: Error running '/home/ohr/.rvm/rubies/jruby-1.5.2/bin/gem install rake ', please check /home/ohr/.rvm/log/jruby-1.5.2/gems*.log info: Installing jruby-openssl error: Error running '/home/ohr/.rvm/rubies/jruby-1.5.2/bin/gem install jruby-openssl ', please check /home/ohr/.rvm/log/jruby-1.5.2/gems*.log
こけた!どうやらrakeとjruby-opensslのインストール時にこけたっぽい。とりあえずログをみてみる。
% tail ~/.rvm/log/jruby-1.5.2/gem [2010-08-24 21:57:03] /home/ohr/.rvm/rubies/jruby-1.5.2/bin/gem install rake env: jruby: No such file or directory [2010-08-24 21:57:03] /home/ohr/.rvm/rubies/jruby-1.5.2/bin/gem install jruby-openssl env: jruby: No such file or directory
gemがうまく実行されていないっぽい。jrubyがみあたらないってどういう事だろう?gemの中身をみてる。
% less ~/.rvm/rubies/jruby-1.5.2/bin/gem --- 1行目はこうなってる --- #!/usr/bin/env jruby 〜 ---
jrubyってファイル自体はbinの中に存在する。jrubyの中身をみてみる。
% less ~/.rvm/rubies/jruby-1.5.2/bin/jruby --- 1行目はこうなってる --- #!/bin/bash 〜 ---
#!/bin/bash ってなってる。
% which bash
/usr/local/bin/bash
ここを/usr/local/bin/bashにかえて試してみる。
% ~/.rvm/rubies/jruby-1.5.2/bin/gem -v env: jruby: No such file or directory % ~/.rvm/rubies/jruby-1.5.2/bin/jruby -v -bash: ./jruby: /bin/bash: bad interpreter: No such file or directory % vi ~/.rvm/rubies/jruby-1.5.2/bin/jruby --- 1行目を修正 --- - #!/bin/bash + #!/usr/local/bin/bash --- % ~/.rvm/rubies/jruby-1.5.2/bin/jruby -v jruby 1.5.2 (ruby 1.8.7 patchlevel 249) (2010-08-20 1c5e29d) (Diablo Java HotSpot(TM) Client VM 1.6.0_07) [i386-java] % ~/.rvm/rubies/jruby-1.5.2/bin/gem -v env: jruby: No such file or directory
まだだめっぽい。#!/usr/bin/env jruby でjrubyがみつからないってことは・・・。
% which jruby %
そうか、jrubyへのpathが通ってないのか。試しにPATHを通してみる。
% export PATH=$PATH:$HOME/.rvm/rubies/jruby-1.5.2/bin % ~/.rvm/rubies/jruby-1.5.2/bin/gem -v 1.3.6
動いた!
rvm install jruby を実行した時に、参照されるのは ~/.rvm/rubies/jruby-1.5.2じゃなくて、~/.rvm/src/jruby-1.5.2 っぽいのでそっちのファイルを修正してinstallしなおしてみる。
% rvm uninstall jruby info: Removing /home/ohr/.rvm/rubies/jruby-1.5.2... % grep -r "/bin/bash" ~/.rvm/src/jruby-1.5.2/* /home/ohr/.rvm/src/jruby-1.5.2/bin/jruby:#!/bin/bash /home/ohr/.rvm/src/jruby-1.5.2/lib/ruby/gems/1.8/gems/ruby-debug-base-0.10.3.2-java/README: #!/bin/bash ※README の #!/bin/bash は関係なさそうなのでとりあえず無視 % vi ~/.rvm/src/jruby-1.5.2/bin/jruby --- 1行目を修正 --- - #!/bin/bash + #!/usr/local/bin/bash --- % rvm install jruby info: /home/ohr/.rvm/src/jruby-1.5.2 has already been extracted. info: Building Nailgun info: Installing JRuby to /home/ohr/.rvm/rubies/jruby-1.5.2 info: Importing initial gems... info: Installing rake info: Installing jruby-openssl % rvm list rvm rubies jruby-1.5.2 [ i386-java ] => ruby-1.8.7-p302 [ i386 ] ruby-1.9.2-p0 [ i386 ] % rvm use jruby info: Using jruby 1.5.2 % ruby -v jruby 1.5.2 (ruby 1.8.7 patchlevel 249) (2010-08-20 1c5e29d) (Diablo Java HotSpot(TM) Client VM 1.6.0_07) [i386-java] % rvm info jruby-1.5.2: 〜
成功したっぽい!
次回はRailsとか入れてみる。