Java执行js脚本

2025-11-19 17:25:39

1、//声明是什么类型的脚本

ScriptEngineManager manager = new ScriptEngineManager();


ScriptEngine engine = manager.getEngineByName("js");

2、//编写js方法体

engine.eval("function getTest(){return 520;}");

3、//执行js脚本。

Invocable invocable = (Invocable) engine;


invocable.invokeFunction("getTest");

4、完整方法:

public static void main(String[] args) {


   //声明是什么类型的脚本
   ScriptEngineManager manager = new ScriptEngineManager();
   ScriptEngine engine = manager.getEngineByName("js");
   //编写js方法体
   try {
       engine.eval("function getTest(){return 520;}");
       //执行js脚本。
       Invocable invocable = (Invocable) engine;
       Object object = invocable.invokeFunction("getTest");
       System.out.println(object);
   } catch (Exception e) {
       e.printStackTrace();
   }

}

Java执行js脚本

5、可以读取文件路径的方式来加载js。

@Test


public void jsTest() {
   //声明是什么类型的脚本
   ScriptEngineManager manager = new ScriptEngineManager();
   ScriptEngine engine = manager.getEngineByName("js");
   //编写js方法体
   try {
       org.springframework.core.io.Resource rnavJs = new ClassPathResource("/static/nav.js");
       engine.eval(new FileReader(rnavJs.getFile()));
       //执行js脚本。
       Invocable invocable = (Invocable) engine;
       Object object = invocable.invokeFunction("myPrint", "wowowo");
       System.out.println(object);
   } catch (Exception e) {
       e.printStackTrace();
   }
}

Java执行js脚本

Java执行js脚本

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢