当我尝试以用户或服务的身份启动 jetty-9.0.3.v20130506 时,我收到如下错误:
2013-06-24 00:00:36.927:WARN:oejs.Holder:main:
java.lang.ClassNotFoundException: org.eclipse.jetty.servlets.CrossOriginFilter
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
当我将 lib=lib 添加到 start.ini 时,我可以通过启动脚本以用户身份运行 jetty。我不明白添加这个标准位置是如何修复它的,但它确实如此。
bin/jetty.sh start
当我尝试将使用相同脚本的码头作为服务启动时,它会因上面给出的错误而失败。
看起来启动脚本在作为服务启动时不使用 start.ini,因为它不处理解决问题的 lib=lib 语句。
谁能提供一个清晰的解释,说明我如何让码头使用 lib 文件夹中的 jar 加载 CrossOriginFilter。