我租了一个 CentOS 6 VPS 并希望在其上安装 Jetty,以便我可以将 Solr 用于我一直在做的项目。
我一直在关注这个码头教程在我的 VPS 上安装 Jetty,但是当我尝试使用启动 Jettyservice jetty start
或/etc/init.d/jetty start
收到以下错误时:
Starting Jetty: grep: /var/run/jetty.state: No such file or directory
grep: /var/run/jetty.state: No such file or directory
grep: /var/run/jetty.state: No such file or directory
FAILED Sat Apr 20 00:21:56 BST 2013
我查看了日志,似乎没有添加任何有关此错误的更多信息。这是我的 Jetty 配置文件的样子:
JAVA_HOME=/usr/bin
JAVA=$JAVA_HOME/java
JAVA_OPTIONS=" -server -Xms256m -Xmx1024m -XX:+DisableExplicitGC "
JETTY_HOME=/srv/jetty
JETTY_USER=jetty
JETTY_PORT=7070
JETTY_HOST=localhost
JETTY_LOGS=/srv/jetty/logs/
有人曾经遇到过这种情况吗?可以告诉我该怎么做才能解决这个问题吗?
答案1
遇到此问题后,我发现jetty.state
必须对 java 进程具有可写入性。因此,如果您没有以 root 身份运行 jetty,/var/run
则将无法写入,并且您将遇到此问题。
我的解决方案是创建一个 jetty 可以写入的目录,例如/opt/jetty/run
将其放入/etc/default/jetty
文件中:
JETTY_RUN=/opt/jetty/run/
答案2
根据教程 http://www.copper-arrow.com/blog/jetty-web-server-centos-6
/etc/init.d/jetty
或查找/srv/jetty/bin/jetty.sh
并替换字符串rm -f $JETTY_STATE
到
#rm -f $JETTY_STATE
在终端:
服务码头监督
几秒钟后按 Ctrl+C,然后
服务码头重启