JRuby+MySQLの環境を事前に作っておかなきゃいけなかったんだけど、
ここのところ、例によって残業続きで、全然時間が作れなくて、前日ドタバタ。
ノートPCのOSをUbuntuに変えてから、諸々環境が整ってなく。
デスクトップPCはRails.vimとautocomplpop.vimなんだけど、
だいぶ昔に参加したときはNetBeansで会が進んでいたのもあり、
Sunだし、サクっといい感じにJRubyできるのかなと思ってNetBeansで。
朝はなんとか起きて、1分遅刻で会場入り。
何やら今回はコマンドラインでの進行…orz
しかも、NetBeansにデフォルトで入ってるRubyGemsが古い予感。
コマンドラインでもイケるように、環境つくろうかな、と思って。
root@xxx:/home/xxx# apt-cache search jruby
jruby0.9 – 100% pure-Java implementation of Ruby
jruby1.0 – 100% pure-Java implementation of Ruby
んで、jruby1.0を入れたら、
root@xxx:/home/xxx# jruby -v
ruby 1.8.5 (2008-01-07 rev 4810) [i386-jruby1.0.2]
1.8.5かよ…orz
仕方ないからトランクもってくるべ。
とか思ってsvn叩いたら、subversion入ってねっていう。。
root@xxx:/home/xxx# apt-get install subversion
svn co http://svn.codehaus.org/jruby/trunk/jruby
んでant叩いたら、antもなかったから、
root@xxx:/home/xxx#apt-get intall ant
とかやってたら時間ねって話。
スキャフォルドとかみんなしちゃってるし。
仕方ないからNetBeansに戻って。
そしたらDB接続のところで何か変なエラー出ちゃって。
Gem入れてJDBCドライバー使う仕様に変更。。
database.ymlは↓こんな感じ。
development:
adapter: jdbc
driver: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306
username: root
password:
プロジェクトを右クリックしてプロパティのJavaで、
“Javaを含める”にチェックいれないとドライバをロードしてくれませんでした。
ようやくスキャフォルドして、みんなに追いついて午前中は終了。
同じチームだったみなさんと昼飯に。
こうやって全然違う業務をされている方たちと
技術談義みたいなことができるっていうのは、なんとも嬉しいことで。
おもろい情報とかもゲットさせていただきました。
で、午後はSwingをjrubyで動かす。
Rubyで開発してる人はirb使ってチョコチョコ動かしながらやると思いますが、
jrubyだとjirbってのがあって。基本的にirbと同じです。
が、驚いたのは、jirb_swingってのがあって、リアルタイムにSwingで
動作確認ができます。
が、自分はNetBeansからのため、IDE上のirbで。
でも、ちゃんとSwingのモジュールが出てきました。
# コンソール上でNetBeansのディレクトリのjirb_swing叩いたら
# パスが通ってないんだかなんだかで動きませんでした。。
で、EC-ONEの人が作ってるっていう、rubeusというSwingのコードを
短くかける的なgemを使ったら、、JavaUtilitiesとかいうクラスがconst_missingとか。
どうやらNetBeansにバンドルされてるjrubyのバンドルが古いのが原因らしい。
っていうことで、jruby1.1.3をhttp://dist.codehaus.org/jruby/からwgetで取ってきて、
tar -xvf jruby-bin-1.1.3.tar.gz してNetBeansのディレクトリに。
そしたらNetBeansがいい感じにそれを汲み取ってくれたんだけど、
Railsから、その他のgemも入れ直し…。
みんなどんどん進んでるし、、
つか、Swingの一番おいしいとこなのに、、
頑張ってなんとか皆さんに追いついて。
が、Swing上でマルチバイト文字が□になっちゃって…。
ブラウザでみるとちゃんとみれるんだけど。。
まぁ、大体、なんとなくSwingわかったす。。。
んで、また出てくるんですよね。イベントリスナーとか。
わかるんだけど、なんか今いちしっくり来ず。
ーーー
振り返り。
クライアント側
→Swingをjrubyで。rubeusを使用。
サーバー側
→別にjruby on railsである必要はなかったんじゃないかっていう。。
コネクションプールとかセッションレプリケーションとかを垣間見たかったんだけどなぁ。。
普通Swingを業務で使うときはNetBeansでVBみたいな感じで
GUIで部品をヒョコヒョコやって開発するらしいのですが、
適当に生成してみました。何回addすんのよ?的に、あまりいじりたくないコードでした。。
そう考えるとrubeusは威力あるなと思いました。
が、仕事でSwing使わないからな、、、。
にしても、この内容で無料ってのはすごい勉強会です。
コメント