0
  • 我正在使用 Rjb 访问 Ruby 中的外部 Java 库。
  • 我使用的 Java 类只能在每次 JVM 运行时配置一次。
  • 在我的测试中,我需要针对不同的配置设置测试 Java 类。
  • 因此,我正在寻找一种“重置”Rjb 的方法,即杀死 JVM 并启动一个新的。

这可能吗?如何?

4

2 回答 2

1

我使用VisualVM 检测JVM 的存在与否,发现Rjb::unload 有效。但是,当我尝试重新加载 JVM 时,它失败了。这是显示这一点的 irb 会话:

➜  ~  irb --prompt simple
>> require 'rjb'
=> true
>> Rjb::load
=> nil
>> Rjb::unload
=> 0
>> Rjb::load
RuntimeError: can't create Java VM
    from (irb):4:in `load'
    from (irb):4
    from /Users/kbennett/.rvm/rubies/ruby-1.9.3-p392/bin/irb:16:in `<main>'
>> 

——基思


http://about.me/keithrbennett

于 2013-05-10T23:45:27.567 回答
0

(免责声明:当我使用 rjb 时,它从来没有坚如磐石的稳定性。)

我将 Ruby 实例变量设置为 Java 类的实例。完成后,我将 Ruby 实例变量设置为nil.

于 2012-05-16T14:59:15.413 回答