我是Jetty和客户端/服务器架构的新手。
我设法在eclipse中编写了一个jetty服务器,但它确实有效。
但我怎么能停止码头服务器?我听说过stop.jar和start.jar。哪里可以找到它?它是否集成在jetty-all-jar中?
答案 0 :(得分:22)
各种jetty-all.jar
工件可用于嵌入式jetty使用。如果您决定使用此jar,则必须管理自己的启动/关闭。
更新:2015 :从Jetty 9开始,不推荐使用jetty-all.jar
作为依赖项。这是因为从Jetty 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
答案 1 :(得分:3)
如果jetty为maven插件,则按 Ctrl + C 停止服务器,然后按 Y 确认终止。