私のRubyスクリプト:
def start
print "Global variable: #{$globalVariable}"
end
それを実行するJavaコード:
jruby = new ScriptEngineManager().getEngineByName("jruby"); // Create engine
jruby.eval(myRubyScriptContents); // Evaluate my ruby script
jruby.put("$globalVariable", this); // Give it a global variable
Invocable invocable = (Invocable) jruby;
invocable.invokeFunction("start"); // Call the start method to print my variable
出力は次のとおりです。
グローバル変数:
変数が空なのはなぜですか?