1. 程式人生 > >Jetty 9 實戰之 安裝 執行 部署 .

Jetty 9 實戰之 安裝 執行 部署 .

剛接觸jetty的時候是在網上查詢的資料,很多都是介紹版本1.6的,然而之後的1.7以後的版本與這之前的差別比較大,我也寫了jetty6的操作的一篇文章,然而我在想寫一個關於servlet的demo的時候出了問題,網上的資料在本機執行不了,發現jar包的引用也不一樣,所以我在這裡我寫寫如何安裝最新的jetty9.X 
 
6.0之前引用的jar包名稱是  import org.mortbay.jetty.Server;
7.0之後引用的jar包名稱是  import org.eclipse.jetty.server.Server;(jetty被eclipse收購了)
 
從網上下載 http://download.eclipse.org/jetty/updates/jetty-bundles-9.x/
 
文章摘抄至 http://blog.csdn.net/kongxx/article/details/7218767
 
1. 首先從Jetty的官方網站http://wiki.eclipse.org/Jetty/Starting/Downloads下載最新的Jetty,上面有兩個版本7.x和8.x,7.x是執行在JDK5及以上版本,8.x,9.x是執行在JDK6及以上版本,這裡我選擇了8.0.4版本。
2. 解壓壓縮包到指定目錄,且將其目錄路徑定義為${JETTY_HOME}
 
3. 啟動Jetty服務
    3.1 進入${JETTY_HOME}目錄,然後執行“java -jar start.jar”,就可以啟動Jetty server了
    3.2 開啟瀏覽器,訪問http://localhost:8080,此時可以看到Jetty的歡迎頁面了。
 
4. Jetty配置
    4.1 Jetty的配置檔案都是放在${JETTY_HOME}/etc目錄下;
    4.2 通過${JETTY_HOME}/etc/jetty-webapps.xml檔案,可以看出Jetty中預設將所有的web app都放在了${JETTY_HOME}/webapps目錄下;(備註:9.x版本是${JETTY_HOME}/etc/webdefault.xml)
    4.3 在Jetty包中預設帶了一個test.war的應用,可以${JETTY_HOME}/webapps目錄下找到這個檔案,在啟動Jetty服務的時候預設已經部署了test.war應用。對於test.war檔案,Jetty還定義了context檔案,放在${JETTY_HOME}/contexts/test.xml,其中將contextPath定義成了“/”,這就是為什麼預設訪問http://localhost:8080/的時候為什麼是訪問test應用的原因了。


5 部署新的web應用程式
    5.1 對於war包的部署,只需要將war檔案放到${JETTY_HOME}/webapps目錄下,然後就可以通過瀏覽器直接訪問了;
     5.2 對於web應用程式目錄的部署,此時可以將web應用程式目錄複製到${JETTY_HOME}/webapps/<myapp>目錄下,然後在${JETTY_HOME}/contexts/<myapp>.xml檔案,其中內容如下:
 

<?xml version="1.0"  encoding="ISO-8859-1"?>  
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">  
<Configure class="org.eclipse.jetty.webapp.WebAppContext">  
	<Set name="contextPath">/myapp</Set>  
	<Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/myapp</Set>
</Configure>  


 
重新啟動Jetty服務,訪問http://localhost:8080/myapp就可以看到新部署web應用程式了。
Jetty-bundles-repository-9.0.5.v20130815.zip (7.5 MB)