2013-09-22 203 views
6

我開發了一個使用Spring MVC,Hibernate,MySQL,Maven和Tomcat的小型MVC項目。我可以順利運行和測試應用程序(本地)。部署Spring MVC項目

現在我需要在只安裝了Tomcat的(在線)服務器上發佈/部署此項目。我如何在線發佈/部署項目?我應該做什麼特殊的構建?我將上傳哪些文件並將其發送到哪裏?

回答

6

有幾種類型的開發選項可用。

通常使用localhost EAR(Exploded ARchive)類型的項目進行開發(因爲您可以輕鬆地對servery進行熱部署)。但是對於生產WAR(Web檔案)(基本上它是相同的EAR檔案,但使用ZIP算法壓縮)。

如果要將項目部署到遠程Tomcat服務器,請將項目作爲WAR歸檔並將其上載到Tomcat的webapps目錄。那麼你可能需要重新啓動Tomcat。但這是手動部署的方式。

更好的選擇是使用自動生成工具(如Maven),它可以編譯工程,運行單元測試,部署在Web服務器上(本地或遠程)等

這一個是如何很好的例子通過使用Maven的Tomcat的Maven的插件部署Tomcat服務器上的項目:http://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tomcat/

祝你好運;)

0

做一個mvn乾淨安裝,你會得到一個.war文件在你的目標目錄的Web模塊。 將其複製並粘貼到tomcat_home/webapps目錄並重新啓動tomcat。而已。現在,您可以在任何配置的端口上訪問它(例如:http://localhost:8080/<your webapp war name>)。可以說你的戰爭名稱是myapp.war,那麼tomcat會將其提取到webapps中的myapp文件夾中。 所以你的網址將是http://localhost:8080/myapp

+0

爲什麼不'MVN清潔套裝'而不是'安裝'? – Bart

+0

也可以這樣做,因爲軟件包階段包含在安裝中,我說過並且兩者都能正常工作 – vigneshre

+0

由於'install'確實不只是包裝應用程序,所以它不是首選的方法。除非你不能將這個Web應用程序作爲依賴包含在其他項目中。 – Bart

0

Maven的部署命令,通常會得到錯誤的各種原因。 如果你在Unix/Linux系統下工作,我建議在控制檯上使用「rsync」方法。 (你可以編寫自己的shell腳本來輕鬆管理)。它不僅幫助部署沒有問題,而且有助於在重新部署時(只上載更改/新文件)獲得時間。因爲maven部署/重新部署將jar/war中的項目上傳爲捆綁包。但是「rysnc」方法會逐個上傳您的項目文件。

在使用它之前,你應該確定這兩個條件。

1項目的生成目標文件夾中(春季工具套件)

2 - 你必須通過ssh訪問到tomcat

示例代碼:(V_:前綴是可變的(可定製))

rsync -avz v_your_project_in_target [email protected]_ip:v_tomcat_name/webapps/v_project_name 

(二分享)