Details
Description
Java class:
public class Foo {
public String foo () {
return "foo";
}
}
>> require 'java'
=> false
>> Java::Foo.new.foo
=> "foo"
>> class Java::Foo
>> def bar
>> "bar"
>> end
>> end
=> nil
>> Java::Foo.new.bar
=> "bar"
>> Java::Foo.new.foo
NoMethodError: undefined method `foo' for #<Java::Foo:0x3bb17a>
from (irb):10
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:150:in `eval_input'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:259:in `signal_status'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:147:in `eval_input'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:146:in `eval_input'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:70:in `start'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:69:in `catch'
from /Users/mark/opt/jruby-1.1.5/lib/ruby/1.8/irb.rb:69:in `start'
from /Users/mark/opt/jruby/bin/jirb:19
Fixed in r9128 by having the Java module define as constants any classes from the default package you access directly.