jruby から java メソッドを呼び出す
jruby から java メソッドを呼び出す例を試してみた。無事 動作する。
ここでは、
標準クラスのメソッド呼び出し、
自作の java クラスのメソッド呼び出し、
Exception の扱い
を試している。
kato$ cat Sample.java
public class Sample {public void sub() {
System.out.println("sub");
}
}
kato$ cat java00.rb
# See http://jruby.codehaus.org/The+JRuby+Tutorial+Part+1+-+Getting+Startedrequire 'java'
include_class 'java.util.TreeSet'# java の TreeSet を使う
set = TreeSet.new
set.add "foo"
set.add "Bar"
set.add "baz"set.each do |v|
puts "value: #{v}"
end# String は ruby が利用済みなので、
# java.lang.String を JString として使えるようにする。
include_class('java.lang.String') {|package,name| "J#{name}" }s = JString.new "a"
puts "s.class: #{s.class}"rs = String.new
puts "rs.class: #{rs.class}"# java の例外を扱う
begin
s1 = JString.new "0123456789"
p s1.substring(2)
# p s1.substring(20)
rescue RuntimeError => e
puts "Java or Ruby exception: #{e}"
raise
endinclude_class 'Sample'
sample = Sample.new
sample.sub#--- End of File ---
« jruby 1.0.0 で druby は動作しないのか? | トップページ | ピックアップ: Processing by Ruby,twitterにセマンティック, etc... »
この記事へのコメントは終了しました。
« jruby 1.0.0 で druby は動作しないのか? | トップページ | ピックアップ: Processing by Ruby,twitterにセマンティック, etc... »
コメント