簡體   English   中英

從Java調用現有JRuby對象的方法

[英]Calling methods of existing JRuby objects from Java

我試圖為我的Java類提供一個JRuby回調,以便在程序的Java部分( OrientDB Java Hook )中發生事件時得到通知。

JRuby Wiki提供了一些示例,這些示例演示了如何加載JRuby文件並在Java中運行它們,但是在我的情況下,Ruby代碼已經在同一JVM中,我只需要向現有的Ruby對象發送信號。

假設我在內存中加載了ruby類:

class A
  def self.b
    puts 'ruby called'
  end
end

我應該如何從Java方法調用Ab

事實證明,在這種情況下,我只能使用JRuby。

對於OrientDB嵌入示例,我可以傳遞ruby類,而不是Java類。

class H < com.orientechnologies.orient.core.hook.ORecordHookAbstract
  def onRecordAfterCreate(r)  
    puts r
  end  
end  

API,然后讓Java代碼調用Ruby。

相關要點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM