我有一個運行在我的mac中的tomcat,我部署了一個我的應用程序的war文件。所以,我使用倉庫作爲Git,我有一個Maven項目。請記住,我已經部署了一個戰爭文件。我確實有該應用程序的maven項目(這意味着這個maven沒有war文件),現在我只需要在我的Git項目中進行更改時,應該在Tomcat中部署這些更改(已經在我的應用程序中運行)。請原諒我對maven有零知識。如何將Maven項目更改部署到Tomcat的Web應用程序中?
請幫忙提供一些建議。那個shell腳本能用這個做什麼嗎?
我有一個運行在我的mac中的tomcat,我部署了一個我的應用程序的war文件。所以,我使用倉庫作爲Git,我有一個Maven項目。請記住,我已經部署了一個戰爭文件。我確實有該應用程序的maven項目(這意味着這個maven沒有war文件),現在我只需要在我的Git項目中進行更改時,應該在Tomcat中部署這些更改(已經在我的應用程序中運行)。請原諒我對maven有零知識。如何將Maven項目更改部署到Tomcat的Web應用程序中?
請幫忙提供一些建議。那個shell腳本能用這個做什麼嗎?
首先你需要能夠自動部署你的應用程序在tomcat上,這裏是一個good article基本上你需要讓maven運行tomcat7-maven-plugin
。爲此,您需要添加:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://localhost:8080/manager/text</url>
<server>TomcatServer</server>
<path>/mkyongWebApp</path>
</configuration>
</plugin>
您pom.xml
在插件部分。然後你就可以在Tomcat上自動部署戰爭:
mvn tomcat7:deploy
下一步是創建一個post-commit。在簡單的方式,它可能看起來像:
$ cat .git/hooks/post-commit
#!/bin/sh
mvn tomcat7:deploy
每次提交後git會執行這個鉤子運行此簡單的命令。
太棒了..非常感謝 –
maven是否會在tomcat上部署這場戰爭?你有沒有試過[Git hooks](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks)? – zaratustra
你在用什麼IDE?如果Eclipse的Tomcat Eclipse插件可以幫助解決這個問題? –
@mr zaratustra,沒有一個maven可以構建一個類似的戰爭,就像在Tomcat中運行的那樣,這意味着兩者都是不同的... ... –