我已经安装了 jetty 9,但我无法将它作为服务启动/停止。从命令行运行有效。
root@backend:/opt/jetty# service jetty start
Job for jetty.service failed. See 'systemctl status jetty.service' and 'journalctl -xn' for details.
root@oakstair-backend:/opt/jetty# systemctl status jetty.service
? jetty.service - LSB: Jetty start script.
Loaded: loaded (/etc/init.d/jetty)
Active: failed (Result: exit-code) since Fri 2016-12-16 10:14:47 UTC; 6min ago
Process: 11826 ExecStart=/etc/init.d/jetty start (code=exited, status=1/FAILURE)
Dec 16 10:14:43 backend jetty[11826]: JETTY_PID = /var/run/jetty.pid
Dec 16 10:14:43 backend jetty[11826]: JETTY_START = /opt/jetty/start.jar
Dec 16 10:14:43 backend jetty[11826]: JETTY_ARGS = --add-to-start=console-capture jetty.state=/opt/jetty/jetty.state jetty-logging.xml jetty-started.xml
Dec 16 10:14:43 backend jetty[11826]: JAVA_OPTIONS = -Dorg.eclipse.jetty.LEVEL=DEBUG -Djetty.logging.dir=/opt/jetty/logs -Djetty.home=/opt/jetty -Djetty.base=/opt/jetty -Djava.io.tmpdir=/tmp
Dec 16 10:14:43 backend jetty[11826]: JAVA = /usr/bin/java
Dec 16 10:14:43 backend jetty[11826]: RUN_CMD = /usr/bin/java -Dorg.eclipse.jetty.LEVEL=DEBUG -Djetty.logging.dir=/opt/jetty/logs -Djetty.home=/opt/jetty -Djetty.base=/opt/jetty -Djava.io.tmpdir=/tmp -jar /opt/jetty/start.jar --add-to-st...ml jetty-started.xml
Dec 16 10:14:47 backend jetty[11826]: Starting Jetty: FAILED Fri Dec 16 10:14:47 UTC 2016
Dec 16 10:14:47 backend systemd[1]: jetty.service: control process exited, code=exited status=1
Dec 16 10:14:47 backend systemd[1]: Failed to start LSB: Jetty start script..
Dec 16 10:14:47 backend systemd[1]: Unit jetty.service entered failed state.
Hint: Some lines were ellipsized, use -l to show in full.
root@backend:/opt/jetty#
root@backend:/opt/jetty# ls /var/log/jetty/
root@backend:/opt/jetty#
Run Code Online (Sandbox Code Playgroud)
目前使用码头 9.3.14,因为我第一次尝试 9.4.0 并得到相同的结果。
不能说 jetty 非常有助于说明为什么它不想作为服务启动。发现其他一些与文件/目录所有者有相同问题的人。但我已经检查过了。
糟糕,我发现它记录到 /opt/jetty/logs 而不是我想要的 /var/logs/jetty。所以现在我有更多的信息......
StartLog Establishing /opt/jetty/logs/start.log on Fri Dec 16 13:40:16 UTC 2016
org.eclipse.jetty.start.graph.GraphException: Missing referenced dependency: console-capture
at org.eclipse.jetty.start.graph.Graph.selectNodes(Graph.java:470)
at org.eclipse.jetty.start.BaseBuilder.build(BaseBuilder.java:152)
at org.eclipse.jetty.start.Main.start(Main.java:407)
at org.eclipse.jetty.start.Main.main(Main.java:75)
Run Code Online (Sandbox Code Playgroud)
-Djetty.home=/opt/jetty -Djetty.base=/opt/jetty
Run Code Online (Sandbox Code Playgroud)
jetty.home和请勿使用同一目录jetty.base。
正如文档和启动警告(自 Jetty 9.2.0 起)告诉您的那样。
一般建议(当你这样做时,你会很高兴,这一切都开始有意义):
将新发行版jetty-home(或旧版jetty-distributiontarball)解压到空 ${jetty.home}目录中。
保留该
${jetty.home}目录,不要编辑它,不要重命名内容,不要删除内容,不要添加内容,不要更改其中的任何内容。
在某处设置适当的${jetty.base}目录,确保它不会${jetty.home}以任何方式与您的目录重叠。
现在完全在您的目录中配置您的 jetty 实例${jetty.base}。
例子:
-Djetty.home=/opt/jetty -Djetty.base=/opt/jetty
Run Code Online (Sandbox Code Playgroud)
由于您是通过服务开始的...
找到的启动脚本${jetty.home}/bin/jetty.sh需要进入适当的/etc/目录(选项太多,无法在此处列出)。
您将在常用文件中配置您的JETTY_HOME和目录。JETTY_BASE/etc/default/jetty
未来,当 Jetty 新版本发布时...
/opt/jetty-dist-9.5.0/etc/default/jetty并设置JETTY_HOME=/opt/jetty-dist-9.5.0您无需编辑${jetty.base}即可进行升级。
| 归档时间: |
|
| 查看次数: |
5209 次 |
| 最近记录: |