1

WARファイルの実行にjettyrunnerを使用しています。コマンドjava-jarjetty runner ex.warを使用していますが、javaからこのコマンドを実行することにより、javaアプリケーションからこのjettyサーバーを実行しています。私の問題は、最初は正常に機能していますが、 2回目は、同じコードで別のwarファイルを再度実行すると、古いwarが実行されます。古いjettyサーバーが実行され続ける理由がわかりました。jettyを起動するためにこのサーバーをJavaから停止するにはどうすればよいですか。別の戦争のためのサーバー。

4

2 に答える 2

2

1つのオプションは次のとおりです。

http://wiki.eclipse.org/Jetty/Howto/Secure_Termination

もう 1 つは、ShutdownHandler を使用することです。

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java

または、Java コードのように jetty-runner を直接使用せず、小さな組み込み用法を記述します。

http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty

于 2012-05-23T12:29:32.927 に答える
0

結局のところ、 jetty-runner.jar には、stop-portおよび で実行された既存の jetty プロセスを停止する機能がありませんstop-key

https://github.com/jetty-project/jetty-documentation/blob/master/src/docbkx/administration/runner/jetty-runner.xmlで答えを見つけました

次に、別のターミナルから jetty を停止するには、同じポートとキー情報を提供する必要があります。jetty-maven-plugin jetty-antこれには、プラグインである jetty をローカルにインストールするか、カスタム クラスを作成する必要があります。

幸いなことに、私はgradleビルドを実装していたのでjetty-ant、私のニーズを満たしました.

于 2017-01-20T13:37:55.057 に答える