我是Jetty和客戶端/服務器體系結構的新手。如何停止Jetty
我成功地在eclipse中編寫了一個jetty服務器,它可以工作。
但我怎麼能阻止碼頭服務器?我聽說了關於stop.jar和start.jar的一些信息。我在哪裏可以找到它?它是否集成在jetty-all-jar中?
我是Jetty和客戶端/服務器體系結構的新手。如何停止Jetty
我成功地在eclipse中編寫了一個jetty服務器,它可以工作。
但我怎麼能阻止碼頭服務器?我聽說了關於stop.jar和start.jar的一些信息。我在哪裏可以找到它?它是否集成在jetty-all-jar中?
各種jetty-all.jar
工件可用於嵌入式碼頭使用。如果你決定使用這個jar,你必須管理你自己的啓動/關閉。
更新:2015:自Jetty 9起,不推薦使用jetty-all.jar
作爲依賴項。這是因爲從碼頭9開始,現在不可能在單個集合罐中滿足「全部」Jetty。有些Jetty組件不能包含在內,因爲它們會導致這個聚集jar問題。 Jetty的未來,HTTP/2的支持,也使得這個聚合jar作爲一個依賴關係不太有用。
典型的嵌入模式使用
啓動服務器線程:
Server server = new Server();
// various server configuration lines
// ...
// Start server (on current thread)
server.start();
// Have current thread wait till server is done running
server.join();
另一個線程,告訴服務器關閉
// Have server stop running
server.stop();
此時原線程在server.join();
上的等待已完成,該線程繼續運行。
標準發佈使用
如果使用可從download.eclipse.org/jetty/標準分發您有可用於啓動/停止碼頭本身start.jar
。
一旦你解開了你的碼頭髮行版,你會在最上面的目錄中找到一個start.jar
。這可以用作以下內容。
啓動進程的碼頭:
$ java -jar start.jar STOP.PORT=28282 STOP.KEY=secret
該過程停止碼頭:
$ java -jar start.jar STOP.PORT=28282 STOP.KEY=secret --stop
如果碼頭作爲Maven插件,你按按Ctrl + Ç和停止服務器按Y確認終止。
感謝您的回答。我使用了stop(),但我仍然能夠發送請求,所以我認爲它不起作用。但我認爲,我的問題是,我開始的不止一次。現在我有一個開始和重新啓動的方法,我可以在終端中調用,它的工作原理。我將不得不爲我的啓動和停止方法添加認證,但這是另一個問題。 – Salvadora 2013-02-28 23:44:52
嘿,你知道如果有一種重新啓動jetty而不恢復加入()的線程的方式嗎? – lisak 2013-06-27 07:21:11