Java 可通过以下方法执行 JavaScript:Rhino:利用 Mozilla 的 JavaScript 引擎。Nashorn:Java 8 以上版本提供的嵌入式 JavaScript 引擎。GraalVM:开源虚拟机,可执行 JavaScript。外部进程:使用“node”或“nodejs”命令运行 JavaScript。

Java 如何执行 JavaScript
为了在 Java 中执行 JavaScript,可以利用以下几种方法:
1. Rhino JavaScript 引擎
Rhino 是一款基于 Mozilla 的 JavaScript 引擎,可与 Java 集成。
立即学习“Java免费学习笔记(深入)”;
2. Nashorn JavaScript 引擎(已弃用)
Nashorn 是 Java 8 及更高版本中包含的嵌入式 JavaScript 引擎。它提供了比 Rhino 更好的性能和功能。
3. GraalVM
内容:生产级 Node.js 后端模式,涵盖 Express/Fastify 配置、分层架构、中间件、错误处理、验证、数据库集成、身份验证及缓存。 时机:构建 REST API、搭建 Node.js 服务器、实施身份验证、集成数据库、添加验证/缓存或构建后端应用结构时。 关键词:nodejs, node, express, fastify, typescript, api, rest, 中间件, 身份验证, jwt, 验证, zod, postgres, mongodb, redis, 缓存, 速率限
GraalVM 是一个用于执行各种语言的开源虚拟机,包括 JavaScript。
4. 外部进程
可以使用 ProcessBuilder 或 Runtime 类创建一个外部进程,该进程执行“node”或“nodejs”命令以运行 JavaScript。
具体步骤:
使用 Rhino
- 添加 rhino-core 库到项目中。
- 使用 org.mozilla.javascript 包中的类创建 Rhino 引擎。
- 使用引擎的 eval() 方法执行 JavaScript 代码。
使用 Nashorn
- Nashorn 无需添加外部库即可使用。
- 创建 javax.script.ScriptEngine 对象以访问 Nashorn 引擎。
- 使用 ScriptEngine 的 eval() 方法执行 JavaScript 代码。
使用 GraalVM
- 添加 org.graalvm.polyglot 包到项目中。
- 使用 PolyglotService 类创建 JavaScript 引擎。
- 使用引擎的 eval() 方法执行 JavaScript 代码。
使用外部进程
- 创建ProcessBuilder或Runtime对象。
- 将“node”或“nodejs”命令指定为可执行文件。
- 传递 JavaScript 代码作为参数。
- 启动进程并解析其输出以获取 JavaScript 执行结果。


















