2016-12-16 18 views
2

jetty 9がインストールされていますが、サービスとして起動/停止できません。 コマンドラインで動作します。debianサービスの起動時に桟橋を起動できない

私が最初に同じ結果と9.4.0を試してみましたので、現在、桟橋9.3.14を使用して
[email protected]:/opt/jetty# service jetty start 
Job for jetty.service failed. See 'systemctl status jetty.service' and 'journalctl -xn' for details. 
[email protected]:/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. 
[email protected]:/opt/jetty# 
[email protected]:/opt/jetty# ls /var/log/jetty/ 
[email protected]:/opt/jetty# 

桟橋はなぜサービスとして開始したくないのかを伝えるのに非常に役立つとは言えません。ファイル/ディレクトリの所有者と同じ問題を抱える他の人が見つかりました。しかし、私はそれを確認しました。

私は、/ var/logs/jettyの代わりに/ opt/jetty/logsにログオンしていることがわかりました。だから今、私はいくつかのより多くの情報を持っている...

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) 

答えて

0
-Djetty.home=/opt/jetty -Djetty.base=/opt/jetty 

jetty.homejetty.baseに同じディレクトリを使用しないでください。

ドキュメントと起動時の警告(Jetty 9.2.0以降)からわかるように、

一般的な提案(あなたがこれを行うとき、あなたは幸せになるだろう、とすべてが意味をなすために開始します):

開梱${jetty.home}ディレクトリに新鮮なディストリビューション。

ディレクトリを1つだけ残すか、編集しないでください。名前を変更しないでください。削除しないでください。物を追加しないでください。変更しないでください。適切な${jetty.base}ディレクトリのどこかに

セットアップ、それはどのような方法であなたの${jetty.home}ディレクトリと重複していないことを確認してください。

次に、${jetty.base}ディレクトリ内にjettyのインスタンスを完全に構成します。

例:

# Initialize a fresh base directory (only need to do this once, ever) 
$ mkdir /path/to/mybase 
$ cd /path/to/mybase 

# Prepare the jetty.base directory (this just creates directories, and adds start.d/*.ini for you) 
$ java -jar /path/to/jetty-dist/start.jar --add-to-start=http,deploy,resources,ext,jmx,requestlog,console-capture,annotations,jsp 
MKDIR : ${jetty.base}/start.d 
INFO : webapp   transitively enabled, ini template available with --add-to-start=webapp 
INFO : ext    initialized in ${jetty.base}/start.d/ext.ini 
INFO : server   transitively enabled, ini template available with --add-to-start=server 
INFO : requestlog  initialized in ${jetty.base}/start.d/requestlog.ini 
INFO : servlet   transitively enabled 
INFO : jsp    initialized in ${jetty.base}/start.d/jsp.ini 
INFO : resources  initialized in ${jetty.base}/start.d/resources.ini 
INFO : annotations  initialized in ${jetty.base}/start.d/annotations.ini 
INFO : plus   transitively enabled 
INFO : deploy   initialized in ${jetty.base}/start.d/deploy.ini 
INFO : security  transitively enabled 
INFO : jmx    initialized in ${jetty.base}/start.d/jmx.ini 
INFO : apache-jsp  transitively enabled 
INFO : console-capture initialized in ${jetty.base}/start.d/console-capture.ini 
INFO : jndi   transitively enabled 
INFO : http   initialized in ${jetty.base}/start.d/http.ini 
MKDIR : ${jetty.base}/lib 
MKDIR : ${jetty.base}/lib/ext 
MKDIR : ${jetty.base}/logs 
MKDIR : ${jetty.base}/resources 
MKDIR : ${jetty.base}/webapps 
INFO : Base directory was modified 

$ ls -F 
lib/ logs/ resources/ start.d/ webapps/ 

# Configure your jetty.base instance 
$ cp /tmp/mywebapp.war webapps/ 
$ edit start.d/http.ini 

# Start your server instance (manually) 
$ java -jar /path/to/jetty-dist/start.jar 

あなたがサービスを介して開始されているので...

それらをリストするためにあなたの適切な/etc/ディレクトリ(あまりにも多くのオプションに行くことに${jetty.home}/bin/jetty.shニーズで見つかった起動スクリプト、ここに)。

あなたのJETTY_HOMEJETTY_BASEディレクトリは、通常の/etc/default/jettyファイルに設定します。

今後、Jettyの新しいバージョンがリリースされると...あなたがいない

  1. 開梱な/opt/jetty-dist-9.5.0
  2. 編集など新しい空のディレクトリに新しい桟橋-分布、あなたの/etc/default/jettyJETTY_HOME=/opt/jetty-dist-9.5.0
  3. スタート桟橋

を設定アップグレードを行うには${jetty.base}を編集する必要があります。

関連する問題