1. 程式人生 > >部署本地web專案到ubuntu下的tomcat伺服器

部署本地web專案到ubuntu下的tomcat伺服器

伺服器所在目錄:/usr/local/apache-tomcat-7.0.91

生成war包:

首先點選這裡進入專案的配置頁面

在Artifacts欄裡點選綠色加號,選擇Web Applicant:Archive

設定好名稱和輸出路徑。Build on make選項可選可不選。如果選擇了,那麼每次在執行專案時都會生成war包。如果不勾選則可以在後續的步驟中手動生成war包。

如果下面顯示.MF file not found in Accept.war,那麼要繼續進行配置。很多教程上都到了這一步就結束了,說“哎呀你們執行專案就可以去設定好的路徑下找war包啦”。

點選綠色加號選擇Directory Content,選擇你當前專案的WebRoot目錄,之後儲存就可以啦。

如果前面勾選了Build on make選項,可以在執行專案時生成war包。如果沒有勾選,可以通過Build-->Build Artifacts來生成war包。

將war包部署到遠端伺服器的tomcat上:

方法一:直接放到tomcat的webapps根目錄下

1. maven web app(比如應用名稱為kindpy)打包成kindpy.war,

打包命令: mvv clean package -Dmaven.test.skip=true

    說明:war是什麼? 裡面有什麼東西?

    a. web app 所有必需的檔案都在target/kindpy目錄下,我們稱之為webroot,打包也就是將webroot打成.war字尾的壓縮包

    b. 所有頁面文字都在webroot目錄下

    c. 所有的後臺程式碼都編譯成.class檔案,放在webroot/WEB-INF/classes目錄下

    d. 所有依賴的jar包都放到webroot/WEB-INF/lib目錄下

    e. 命令打包後,kindpy.war包檔案會出現在target目錄下,也就是與webroot同級別

 

2. 將kindpy.war包copy到tomcat安裝的webapps目錄下

 註釋:另一種方法是直接登陸tomcat管理頁面,點選“Manager App”, 進入管理頁面,初次登陸需要使用者名稱、密碼,可以開啟conf/tomcat-users.xml檔案,在tomcat-users節點下新增   <user username="tomcat" password="tomcat" roles="manager-gui"/>

然後選擇.war包檔案點選Deploy上傳即可,因為tomcat處於執行狀態,tomcat會將.war包檔案自動解壓,以下第3部也就可以忽略了

 

3. 進去tomcat安裝的bin目錄點選startup.bat啟動,此時會將webapps/kindpy.war包檔案解壓成資料夾webapps/kindpy.war(如果tomcat已啟動,此時copy入.war包會自動解壓,不用重啟)

 

4. 瀏覽器輸入: localhost:8080/kindpy/index.jsp  正式訪問吧!!

 

方法二:部署在設定的虛擬目錄下

1. 開啟server.xml檔案,在Host節點下新增

<Context path="/kindpyVirtual" docBase="D:\Work\JavaProjects\Study\kindpy\target\kindpy" privileged="false" reloadable="true"/>

path: 虛擬目錄, 你將可通過連結http://localhost:8080/kindpyVirtual/*.jsp訪問頁面

docBase: maven打包之後生成的webroot資料夾地址,如下所示

privileged: 如果為true,才允許web應用使用tomcat容器內的servlet,一般都設定為false,除非你想寫一個tomcat的administrator或manager程式

reloadable: 如果為true,則表示修改jsp檔案後,不需要重啟tomcat就可以實現同步顯示

 

2. 啟動tomcat, tomcat會將docbase目錄(webroot)的內容全部copy至設定的虛擬目錄kindpyVirtual下

 

3.瀏覽器輸入: localhost:8080/kindpy/index.jsp  正式訪問吧!!

 

最後還有一點需要注意,如何刪除一個web應用?

刪除一個web應用,需要刪除tomcat的webapps下相應的資料夾,刪除server.xml中相應的Context配置,還要將conf\Catalina\localhost下的xml都刪除掉,否則tomcat仍然會去配置載入