InfoQ

InfoQ

News

マイブックマーク

ブックマークするためにログイン または 会員登録 する

ブックマークされました!

ブックマークがエラーになりました。もう一度お願いします。

JRuby 1.1.6のリリース、Ruby 1.9のサポートの改善

作者 Werner Schuster , 翻訳者 編集部 投稿日 2008年12月18日

セクション
デベロップメント
トピック
JRuby ,
Ruby ,
ランタイム ,
Java ,
動的言語 ,
スクリプティング ,
言語 ,
プログラミング ,
RubyGems ,
Ruby1.9

JRuby 1.1.6はがダウンロード可能になっている(リンク)(JRuby 1.1.6リリースノート)(リンク)

主要な機能は、11月後半に約束されたRuby 1.9のパーサーサポート(リンク)である。リリースノートに記されているように、JRubyにはRuby 1.9ライブラリのほとんどを搭載しており、Q1 2009で予定されている完全なサポート(リンク)がある。Ruby 1.9のサポートは、--1.9コマンド行スイッチ次第である。JRubyのembedderは、たとえばorg.jruby.RubyInstanceConfig(リンク)インスタンスでバージョンを定めることができる。そのインスタンスは、JavaEmbedUtils.initialize(List loadPaths, RubyInstanceConfig config)メソッドに渡される。

リリースノートは、org.jruby.javasupport.JavaEmbedUtilsク ラスに対する改善(リンク)を示し、通常のJavaコードにJRubyに組み込んでいるすべての人にとって、役立つものである。JRubyとの対話には、内部 JRuby APIを使用しなくてはならない。それはリリース間で変更されがちである。ソリューションとしては、たとえばBSFまたは、Java 6に導入されたJSR 223 hosting API(リンク)を使用することである。BSF(リンク)の使用には、BSFライブラリが必要である一方で、JSR 223はJava 6にコードをつなぐ。JavaEmbedUtilsクラスは、BSFやJSR 223に依存することなく、JRubyインスタンスの初期化、メソッドの呼び出し、RubyタイプをJavaタイプへの変換などを可能にする。

リリースノート(リンク)は、さらに以下のようにリストにしている。

- 消滅したIOリファレンスのバグ修正のますます増加するリスト
- 高速Array.sort
- jarファイルを解凍する必要なしに、jarファイルからgemsを実行する。
- jarにgemリポジトリを格納し、クラスパス経由でそれらをロードする。
-RCプロセス間のかなり重要な2箇所のメモリリークを削除
- 1.1.5より74のバグの修正

修正されたバグのサンプルは、以下のとおりである。

  • JIRA-3189(リンク) 「java.lang.Iterableは、それぞれメソッドがなければならない」
  • JIRA-3230(リンク) は、1.1.5のリリースで壊れたHpricotを修正。
  • JIRA-3233(リンク) は、Rails 2.2.2でJavaオブジェクトをインスタンス化する際に発生する問題を修正
  • JIRA-3126(リンク) 「Rubygemsがロードされ、jarファイルで使用可能」


最後に、Ruby 1.1.6RC1は、最新のRuby shootoutで使用されるJRubyバージョンであった(参考記事・英語)

 

原文はこちらです:http://www.infoq.com/news/2008/12/jruby-116-ruby19-parsing