我正在使用nashorn java ScriptEngine。我想評估一個包含其他腳本的腳本。我知道我可以直接在JavaScript本身中使用load指令,但我更願意直接從實例化腳本引擎的Java代碼導入或加載它。 有沒有辦法做到這一點?類似於:是否有可能將JavaScript文件導入到Java ScriptEngine
void evaluateScript(String scriptName, String dependency) {
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine jsEngine = factory.getEngineByName("nashorn");
jsEngine.load(depency); // does not exist.
jsEngine.eval();
}
我看到「加載」功能不存在。我怎麼能做到這一點?
由於
你好,謝謝你的回答,但它不適合我的問題:我想執行一個腳本theScript,連同其他腳本otherScriptList。但是我會嘗試使用相同的引擎對不同的腳本進行評估,並檢查引擎是否保留之前的腳本。 – Joel
是的,同樣的引擎保持「上下文」! –