脚本语言的Java API(JSR223)是Java 1.6的标准配置,可以针对Java 1.5 here单独下载。
我的问题是:如果使用单独的1.5版本的下载与1.6版本的本机支持,是否应该了解任何限制或差异?
最佳答案
我之前曾面对过同样的问题。
差异之一可能是脚本引擎的质量。这是我在jruby用户列表上得到的答复:
我想原因之一可能是当前的JRuby引擎可以在
Java5不是正式版本。我将档案存放在使用者的
方便。 http://old.nabble.com/Call-for-discussion-about-embed-API-tp24528478p24981076.html:
也:
我也知道报告了一些类版本问题
适用于Java5 + JSR223 + Jruby,但对我来说效果很好。 http://old.nabble.com/Call-for-discussion-about-embed-API-tp24528478p25181920.html
我认为这些与实际上在JDK5下编译的ScriptEngine有关,请参阅http://kenai.com/projects/jruby/pages/JavaIntegration#Java_6_(using_JSR_223:_Scripting)
就是说,除了java.scripting API本身的局限性之外,我还没有真正在Java5和JRuby上遇到过这些或其他实际问题,但是我想在Java6上也是如此。 (也请参见上面的线程)。
因此,我认为Java6的好处(严格地从JSR223的角度来看)将是更好的支持和性能。
另一方面,我确实遇到了带有OSGI的Java 6的类加载问题:我认为它需要进行一些额外的调整,以便JRE的内置发现机制可以找到捆绑在一起的ScriptEngine。(我可能会提出另一个SO问题: )
关于java - Java 1.5上的JSR223实现是否有限制,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4195353/