使用 Apache Sling 的 Scala 2.8 脚本引擎
我一直在尝试使用上个月更新的 Apache Sling 的 Scala 2.8 脚本引擎。我使用 Scala 2.7 和 Sling 的 Scala 2.7 脚本引擎,效果非常好。当我尝试使用新的实现时遇到了问题。当调用 ScalaScriptEngine 的 eval 函数时,由于 NullPointerException,我总是收到“执行脚本时出错”。有其他人使用过新版本的脚本引擎并遇到过这个问题吗?
谢谢! 史蒂文
I've been trying to use Apache Sling's Scala 2.8 Script Engine recently updated last month. I came from using Scala 2.7 along with Sling's Scala 2.7 Script Engine and that worked great. I run into a problem when I try to use the new implementation. When calling ScalaScriptEngine's eval function I always receive an "Error executing script" due to a NullPointerException. Has anyone else worked with the new build of the script engine and run into this as well?
Thanks!
Steven
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
有一个错误导致 Scala 脚本引擎无法独立使用。请参阅https://issues.apache.org/jira/browse/SLING-1877 了解详细信息和补丁。
另请注意,应用补丁后,您在使用脚本引擎时仍然需要设置类路径。这是对 2.7.7 的更改,其中自动使用默认的 java 类路径(即 java.class.path)。在 2.8 中,您必须通过“-usejavacp”参数显式设置此值。
以下是一些示例代码,演示了 Scala 脚本引擎的独立用法:
There is a bug which prevent the Scala scripting engine from being used standalone. See https://issues.apache.org/jira/browse/SLING-1877 for details and a patch.
Also note, that with the patch applied you still need to set the class path when using the scripting engine. This is a change from 2.7.7 where the default java class path (i.e. java.class.path) was used automatically. In 2.8 you have to set this explicitly thorough the '-usejavacp' argument.
Here is some sample code demonstrating the standalone usage of the Scala scripting engine: