1. 程式人生 > >eclipse中部署多個專案到tomcat的情況總結

eclipse中部署多個專案到tomcat的情況總結

1,tomcat解壓包,通過startup.bat(windows系統)啟動。

單獨使用tomcat來部署多個web專案,並且我們要實現多個專案對應多個埠。以apache-tomcat-8.5.11為例。
1.1 下載好tomcat後解壓,在tomcat根目錄下複製一個webapps1(一個webapps對應一個埠),同時在當前的conf資料夾裡複製一個複製一個
這裡寫圖片描述

這裡寫圖片描述

1.2我準備了兩個簡單的web專案sitech-demo1(部署在webapps)和sitech-demo2(部署在webapps1),將編譯好的專案部署到對應的資料夾中。

1.3 配置tomcat。
這裡寫圖片描述

1.4 配置server.xml,要新增多少個埠就新增多少個service標籤

<?xml version="1.0" encoding="UTF-8"?>

<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <!-- Prevent memory leaks due to use of particular java/javax APIs-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> <GlobalNamingResources
>
<Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" /> </GlobalNamingResources> <Service name="Catalina"> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /> </Host> </Engine> </Service> <Service name="Catalina1"> <Connector port="18080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="18009" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina1" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps1" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /> <!-- 當通過eclipse之間部署到tomcat中時會自新增context標籤其中path就是新的訪問路徑,eclipse中預設的專案名稱 <Context docBase="sitech-demo1" path="/test" reloadable="true" source="org.eclipse.jst.jee.server:sitech-demo1"/>--> </Host> </Engine> </Service> </Server>

1.5 啟動tomcat,startup.bat
這裡寫圖片描述

1.6 測試訪問結果
這裡寫圖片描述

1.7 測試用的tomcat及demo

2、eclipse中配置專案,一個tomcat部署多個專案用不同的埠訪問(測試環境tomcat7.0.41)

2.1 新建多個server啟動項,
這裡寫圖片描述

我這邊因為demo1和demo2自己測試的時候已經建好,所以建了一個demo3這是為了演示操作步驟,小夥伴可以直接建立demo1,最後finish
這裡寫圖片描述

2.2 雙擊demo3進行配置,我這邊是測試第一種情況所以按第一種配置(配置完記得右鍵demo3pulish,這樣才能在workspace中看到虛擬執行環境)
這裡寫圖片描述

workspace下自動生成的虛擬執行環境

這裡寫圖片描述

2.3往demo3中新增sitech-demo1專案後,雙擊demo3 server回到上面2.2的配置介面選擇modules,此時可以看到已經新增進來的專案sitech-demo1,選中這條記錄,eidt,編輯訪問路徑(path的值可以自己隨便寫都可以不一定要與server相同)所以我的訪問路徑就是http://localhost:18080/demo3/index.html
這裡寫圖片描述

2.4 這樣新建好多個啟動專案對應對個專案,就可以同時啟動多個專案,並通過不同的埠來訪問,我測試用的是demo1,demo2兩個啟動項,demo3執行的是跟demo1一樣的專案所以就不測試了

demo1--->專案sitech-demo1
demo2--->專案sitech-demo2

2.5 同時開啟兩個demo1和demo2啟動項

這裡寫圖片描述

2.6 測試結果

這裡寫圖片描述

3 eclipse新增不同版本的tomcat執行