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.gz mv 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服務