如果我的Ruby
应用程序中ScriptingContainer
JRuby
执行了Java
脚本,那么Ruby
脚本是否能够访问或使用我在Java
应用中定义的课程,如果我没有与剧本分享任何内容?
通过分享这就是我的意思:
ruby = new ScriptingContainer(LocalVariableBehavior.PERSISTENT);
ruby.put("main", MyClass.class);
ruby.runScriptlet(readFile("Test.rb"));
如您所见,我正在与Ruby
脚本共享一个名为main的变量,其值为MyClass.class
。
如果我不分享任何内容,Ruby
脚本是否仍能在我的应用中使用MyClass
?