Tom sums up the history of JRuby's Java include syntax in his blog post, but here's the executive summary.
Where before you would use this:
include_class "java.util.ArrayList"
include_class("java.lang.String") { |p,n| "J" + n }
You now can simply do this:
ArrayList = java.util.ArrayList
JString = java.lang.String
And this syntax also works directly; no assignment to a constant is required:
class MyClass < java.awt.event.ActionListener
...
end
Pretty slick, if you ask me.
it would be nice to include_class java.sql.*
ReplyDeleteit would also be of great help have a way to dynamically load a jar onto the classpath. perhaps a ruby friendly way such as require_jar $jarname and require's cousin load_jar.
there should be an easy way to 'namespace' all of java. something like include_class java.lang.* into_namespace 'JAVA' or such.