4

我想在我的 Java 应用程序中使用一种或多种脚本语言。

JRuby 网站我发现有 3 种方法:

  1. 使用 Java 6(使用 JSR 223:脚本)
  2. 嵌入 Bean 脚本框架 (BSF)
  3. 直接调用 $YOUR_SCRIPTING_ENGINE$ API

由于我需要支持超过 1 个脚本引擎,我认为选项 3 不够好。

在寻找解决方案 1. JSR 223: Scripting 时,我开始寻找包含所有脚本引擎集成的 zip 存档

Download and unzip the collection of jars from the documents and files section of the site (jsr223-engines.tar.gz or jsr223-engines.zip).

但是这个文件在网上无处可寻(项目主页的下载部分是空的。如果我愿意,我可以下载源代码并构建我需要的引擎集成。源代码看起来很旧(我所看到的 2 年以上)

JSR 223 是否仍然存在并且是一个可供选择的好解决方案?如果不是,那么 Bean Scripting Framework 是一个不错的选择吗?最后一个文档页面非常差,只支持少数脚本语言(但它支持我想要的大部分语言)......

4

1 回答 1

2

我在几个应用程序中嵌入了沙盒 Rhino,发现直接使用 Rhino 代码更容易。

除非您想要嵌入多种不同的语言或想要部署在已经有 JSR 223 jar 的 VM 上,否则我认为您不会从额外的抽象层中受益匪浅。

我强烈建议您在选择要嵌入的语言时考虑沙盒的易用性。

于 2011-03-19T01:24:25.507 回答