从Java调用现有JRuby对象的方法
我试图向Java类提供JRuby回调,以便在程序的Java部分()中发生事件时得到通知 JRubyWiki提供了如何加载JRuby文件并在Java中运行它们的演示,但在我的例子中,Ruby代码已经在同一个JVM中,我只需要向现有的Ruby对象发送信号 假设我在内存中加载了ruby类:从Java调用现有JRuby对象的方法,java,ruby,jruby,Java,Ruby,Jruby,我试图向Java类提供JRuby回调,以便在程序的Java部分()中发生事件时得到通知 JRubyWiki提供了如何加载JRuby文件并在Java中运行它们的演示,但在我的例子中,Ruby代码已经在同一个JVM中,我只需要向现有的Ruby对象发送信号 假设我在内存中加载了ruby类: class A def self.b puts 'ruby called' end end 我应该如何从Java方法调用A.b?在这种情况下,我可以使用JRuby 对于OrientDB嵌入示例,我
class A
def self.b
puts 'ruby called'
end
end
我应该如何从Java方法调用
A.b
?在这种情况下,我可以使用JRuby
对于OrientDB嵌入示例,我可以传递一个ruby类,而不是Java类
class H < com.orientechnologies.orient.core.hook.ORecordHookAbstract
def onRecordAfterCreate(r)
puts r
end
end
H类
并让Java代码调用Ruby
您能否澄清一下如何设置JRuby解释器。。。不清楚您是否正在使用嵌入API。@kares您好,我正在使用jruby 9.0.0.0运行整个应用程序,并在jruby中使用LockJar+com.tinkerpop.blueprints.impls.orient.OrientGraphFactory来获得嵌入的OrientDB。