jetty和我们通常使用的tomcat一样,是一个开源的servlet容器,特点是轻量易部署,一方面jetty可以作为web容器使用,另一方面也是最一般的方式是jetty以一组jar包的形式发布,所以很容器被实例化成为一个对象从而嵌入到我们的应用程序中,让java应用程序可以独立的发布和运行
jetty和tomcat的结构很相似,并且使用很简单,在linux下部署jetty过程如下:
1. 下载jetty
jetty的官网地址是:http://www.eclipse.org/jetty/ 进入网站之后点击左边的Downloads进入下载界面,下载界面地址是:http://www.eclipse.org/jetty/download.html
这里下载最新版的9.3.12.v20160915的即可,下载zip或者tgz都可以
下载之后上传至linux,准备下一步安装
2. 安装jetty
这里将jetty安装在/usr/local/jetty下,具体也目录可以自己定义:
tar -xvzf jetty-distribution-9.3.12.v20160915.tar.gzmv jetty-distribution-9.3.12.v20160915 /usr/local/jetty/cd /usr/local/jetty
解压完就完成了安装,当前目录在jetty安装目录下,可以看到jetty的目录结构如下:
可以看到和tomcat很相似,bin下放置启动脚本,logs是日志目录,etc是配置文件目录,start.ini是启动的默认配置文件,webapps下放置具体的web应用,可以是普通应用,也可以是war包,和tomcat应用完全一致,直接拿过来用即可,唯一不同的是应用下没有默认首页或者路由拦截的时候jetty会显示目录结构,可以通过配置取消,也可以自己定义拦截请求
3、启动jetty
在上面图中jetty目录下的start.jar可以用于启动,执行命令: java -jar start.jar 即可启动,这个是在当前命令行启动,如果想在后台启动也可以使用nohup和screen
另一种启动方式是执行: ./bin/jetty.sh start 启动,这个默认会在后台运行jetty
启动jetty后,访问http://ip:8080可以访问到404界面,因为webapps下没有任何应用
现在jetty就跑起来了,现在可以把写的jsp/servlet、spring应用以及各种web应用放到其中运行啦
停止jetty可以执行如下命令:
如果是使用 java -jar start.jar 进行启动的话,直接kill即可停止
start.jar还有另外一种启动方式,可以设置控制端口和密码,比如: java -DSTOP.PORT=8079 -DSTOP.KEY=123456 -jar start.jar 启动后关闭时也是需要权限的
注意上面的8079只是控制使用的端口号,并不是jetty web访问的端口号,停止可以使用下面命令:
java -DSTOP.PORT=8079 -DSTOP.KEY=123456 -jar start.jar --stop
这里密码和端口号都要一样,否则无法停止
如果是使用 bin/jetty.sh start 启动的话那么使用 bin/jetty.sh stop 停止即可
另外使用 bin/jetty.sh restart 可以重启jetty服务