1

如果我的应用程序中有一个由ofRuby执行的脚本,如果我没有与脚本共享任何内容,该脚本是否能够访问或使用我在应用程序中定义的类?ScriptingContainerJRubyJavaRubyJava

通过分享这就是我的意思:

ruby = new ScriptingContainer(LocalVariableBehavior.PERSISTENT);
ruby.put("main", MyClass.class);
ruby.runScriptlet(readFile("Test.rb"));

如您所见,我正在与Ruby脚本共享一个名为 main 的变量,其值为MyClass.class.

如果我不共享任何内容,该Ruby脚本是否仍然能够MyClass在我的应用程序中使用?

4

1 回答 1

3

是的,根据我的回答:如果MyClass在您的 classpath/ 上$LOAD_PATH,JRuby 会在您使用它时拾取java_import它。

于 2013-01-10T09:50:54.140 回答