JSR-223和Groovy

时间:2011-03-11 14:20:41

标签: java groovy

我的Java应用程序需要脚本语言。

我倾向于使用Groovy,因为工具和语言似乎最适合这项工作。

我的困惑来自于整个JSR-223适用于所有这些。在创建引擎时我应该关心使用特定的JSR-223接口吗?

例如,我们需要远程存储我们的脚本,并能够触发我们的应用程序按需重新加载它们。 GroovyScriptEngine似乎正是我们想要使用的。

但是,this页面讨论了根据JSR-223规范创建Groovy引擎的问题。这个界面更加有限,缺乏我们需要的功能,无需构建额外的代码。

JSR-223如何适应这一切?我应该关心使用JSR-223接口吗?为什么呢?

3 个答案:

答案 0 :(得分:3)

来自Groovy documentation on JSR 223

  

Groovy有很多机制   与Java集成,其中一些   提供商比可用的更丰富的选择   与JSR 223(例如更大   可配置性和更高的安全性   控制)。建议使用JSR 223   你需要保持选择   语言使用灵活,你没有   不要求整合机制   由JSR-223支持。

答案 1 :(得分:2)

你打算将其他语言插入你的框架吗?

如果是这样,那么我猜你将需要JSR-223的东西..

如果没有,而且你只想插入Groovy,那么我会向后迈出这一步,走更直接的路线......

答案 2 :(得分:0)

如果您想知道为什么ScriptEngineManager找不到脚本引擎。原因是对JSR 223的支持在Groovy的2.x版本中有所下降。

正如this page对版本1.6中添加的对JSR 233的支持所记录的那样。集成的代码位于包org.codehaus.groovy.jsr223中。

在版本2.x中,似乎已删除此包。