簡単にJavaアプリからJRubyを呼び出して実行してみる。
jruby.jarを設定するのを忘れずに、以下のソースコードでRubyプログラムを呼び出して実行することができます。
package com.taktod.rubytest;
import java.util.ArrayList;
import org.jruby.Ruby;
import org.jruby.RubyRuntimeAdapter;
import org.jruby.javasupport.JavaEmbedUtils;
/**
* アプリケーション作成
* @author taktod
* @version 2010/12/26
*/
public class App {
/**
* メインエントリー
* @param arg
*/
public static void main
(String[] arg
) { new App();
}
/**
* コンストラクター
*/
public App() {
Ruby ruby = JavaEmbedUtils.initialize(new ArrayList<String>());
RubyRuntimeAdapter evaler = JavaEmbedUtils.newRuntimeAdapter();
String script
= "puts('aiueo')"; evaler.eval(ruby, script);
}
}
コード解説
ルビーオブジェクトを作成します。(この処理が非常におそいので、サーバーアプリとして利用する場合はこの部分だけ、先にすませておいた方がよさそうです。)
Ruby ruby = JavaEmbedUtils.initialize(new ArrayList<String>());
実行するためのアダプターを作成
RubyRuntimeAdapter evaler = JavaEmbedUtils.newRuntimeAdapter();
今回実行するルビースクリプト
String script = "puts('aiueo')";
スクリプトを実行します。
evaler.eval(ruby, script);
最終更新:2010年12月26日 19:48