私は Rhino を使用context.evaluateString()
して、Java 内からいくつかの単純な JavaScript を実行しています。これは、 Embedding Javascript ガイドの教科書です。
String script = // simple logic
Context c = new ContextFactory().enterContext();
ScriptableObject scope = context.initStandardObjects();
Object o = context.evaluateString(scope, script, "myScript", 1, null);
ScriptableObject result = Context.jsToJava(o, ScriptableObject.class);
メインの Rhino ドキュメントがダウンしているように見えるため、これが現在のベスト プラクティスであるかどうかはわかりませんが、これまでのところ機能しています。
作業ディレクトリ内のライブラリを参照できるようにしたいです。Rhino シェルload
がサポートしていることはわかりますが、埋め込みエンジンでは機能しないと思います。
これは可能ですか?それはどこかに文書化されていますか?load('other.js')
理想的には、次のようなものを呼び出すだけで、グローバル プロパティとして指定したディレクトリを検索できるようにしたいと考えています。