Java +脚本引擎:JSR223 +类似替代品之间的差异



在使用JSR223与Rhino的接口时,我已经开始遇到一些非常恼人的问题:

  • 不良异常信息(见我的其他SO问题)
  • 无法使用ScriptableObject(将Javascript foo变量设置为具有属性的Javascript值,以便我可以将foo.bar设置为某些内容,foo.baz设置为其他内容,这将是很好的)。JSR223只是让我设置根全局变量为Java值。)
  • 无法设置只读变量/属性

如果有必要,我会考虑切换到Rhino作为本地脚本引擎,但随之而来的痛苦是,如果不做一些额外的工作,就无法支持其他语言。

除了JSR223,还有更好的抽象层吗?

我听说过Bean脚本框架,但我不确定它有什么不同/更糟/更好。我也遇到了Scripturian,但我不知道。

不是真正的答案,但从我有限的探索来看,jsr223和bsf相当简单,并没有真正解决更强大的嵌入问题。如果你真的想要更好的集成,你需要使用本地桥。

最新更新