引用错误:未定义“警报”
2022-09-02 09:05:01
我正在尝试从java代码调用java脚本函数。
这是我的Java代码
public static void main(String[] args) throws FileNotFoundException {
try {
/**
* To call a anonymous function from java script file
*/
ScriptEngine engine = new ScriptEngineManager()
.getEngineByName("javascript");
FileReader fr = new FileReader("src/js/MySpec.js");
engine.eval(fr);
} catch (ScriptException scrEx) {
scrEx.printStackTrace();
}
}
这是我的java脚本文件:
(function() {
alert("Hello World !!!");
})();
但是当我运行驱动程序类的main方法时,它会给我错误如下:
Exception in thread "main" javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "alert" is not defined. (<Unknown source>#2) in <Unknown source> at line number 2
at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:110)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:232)
at Java6RhinoRunner.load(Java6RhinoRunner.java:42)
at Java6RhinoRunner.main(Java6RhinoRunner.java:12)
我所知道的是,它需要一些脚本引擎来执行它。
为此,我将rhino.jar文件添加到我的类路径中。但这是行不通的。
我不明白如何解决这个错误。请帮忙。提前致谢。