1. 程式人生 > >使用IDEA&Tomcat9部署Web專案

使用IDEA&Tomcat9部署Web專案

看了不少的相關部落格,感覺寫的都有遺漏的地方,我來嘗試著把細節都記錄下來,解決一些新手可能遇到的問題。

已準備好的:java開發環境 + IDEA + Tomcat 9  。Java的環境變數如JAVA_HOME等需要配置好,這個網上有很多教程。

1.開啟IDEA建立新專案


在Application Server如果沒有自動找到你的Tomcat,點選New-TomcatServer

選擇你的Tomcat所在的目錄,Application Server選好了。


接下來選擇工程目錄,建立工程

Finish,即建立成功。

2.新增web.xml檔案

建立成功的專案也許沒有web/WEBINF/web.xml 檔案,這時需要我們去配置生成。如果你的工程中自動生成了web.xml檔案,那麼可以跳過這一步。

現在我們的整個介面是這樣的:

一個完整的web專案是需要web.xml檔案來描述URL對映等資訊的,點選File - Project Structure,再點選Facets選項。選定Web(工程名,這裡是TestApp),然後點選右面綠色的+,選擇web.xml。

選擇路徑,這裡IDEA預設生成的路徑不一定是對的,比如下面的這個就不對,需要我們再改。


在中間加個\web\,如下

然後OK,點選右下角的Apply,再點OK,就可以看到正確路徑下的web.xml了:

3.IDEA中部署Tomcat伺服器

在IDEA主介面點選Run - Edit Configurations。 AfterLaunch選中之後,當Web專案執行起來後,會自動啟動瀏覽器並進入對應的地址。這個Server介面的選項都不用動,就使用預設的8080埠。


點選Deployment介面:

TestApp:war exploded這個一定要有,如果沒有的話點選旁邊的+ 選擇 Artifact,生成一個war exploded:

Application Context:每一個Context對應一個Web應用。這裡Context可以使用預設的“/”,也可以自己填一個,比如"/TestApp"。若使用預設的“/”那麼當程式執行起來的時候訪問localhost:8080/就可以訪問到自己的應用,如使用了"/TestApp",那麼執行後需要訪問的地址為localhost:8080/TestApp/   。

4.執行起來~

將配置都Apply之後,回到IDEA主介面,把程式Run起來,靜待數秒,就會自動啟動預設瀏覽器,進入下面的頁面:

  這個頁面顯示的是工程中的index.jsp中的內容(如果你在Context中填了自己的內容如"TestApp",那麼網址將會是:localhost:8080/TestApp)。

5.利用WAR包,直接使用Tomcat進入本地Web應用

當程式執行之後會生成一個WAR包,含有遠端部署Web專案需要的所有資源,我們可以在專案目錄對應的out資料夾中看到:

我們可以將這個WAR包拷貝到Tomcat目錄的webapps資料夾中(將TestApp_war_exploded名字改成MyTestApp便於輸入):

這樣,我們就可以不通過IDEA而直接通過Tomcat來進入本地Web應用。(不要忘了先把IDEA中正在執行的專案停止,否則會佔用8080埠,導致後面無法進行)
進入tomcat的bin目錄,開啟tomcat9w.exe:

應該會出現這個介面:

如果沒有出現這個介面而提示指定的服務未安裝,那麼開啟命令列(win+R,輸入cmd,回車),cd到tomcat的bin目錄,輸入service.bat install:

再啟動tomcat9w.exe,就可以正常使用了。我們點選Start按鈕,等待數秒,伺服器就啟動了。這時開啟瀏覽器輸入:localhost:8080,會顯示tomcat的網站:

再輸入地址: localhost:8080/MyTestApp ,就可以看到與我們之前使用IDEA執行程式一樣的效果。

至此已經可以滿足大多數人的學習需求了。後面還需要將Web應用釋出在Internet,需要的時候再百度如何遠端部署專案到伺服器吧~