你可以試試這個:
<plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.1</version> <configuration> <url>${server-url}</url> <path>${deploy-path}</path> <username>${deploy-un}</username> <password>${deploy-pw}</password> </configuration> </plugin>
當你在你的項目很多模塊,使用<profile>
每個模塊中部署每個模塊不同URLs
。例如:
在模塊A:
<profile> <id>server1</id> <properties> <!-- Replace with URL and authentication if needed --> <server-url>http://localhost:8080/manager/text</server-url> <deploy-path>/moduleA</deploy-path> <deploy-un>tomcatscript</deploy-un> <deploy-pw>[email protected]</deploy-pw> </properties> </profile>
在模塊B:
<profile> <id>server1</id> <properties> <!-- Replace with URL and authentication if needed --> <server-url>http://localhost:8080/manager/text</server-url> <deploy-path>/moduleB</deploy-path> <deploy-un>tomcatscript</deploy-un> <deploy-pw>[email protected]</deploy-pw> </properties> </profile>
不要忘記添加到您的tomcat/conf/tomcat-users.xml
這樣的:
<role rolename="manager-script"/> <role rolename="manager-jmx"/> <user username="tomcatscript" password="[email protected]" roles="manager-script, manager-jmx"/>
然後在終端,使用此:mvn tomcat7:[re]deploy -Pserver1
moduleA
將被部署到http://localhost:8080/moduleA
,
moduleB
將被部署到http://localhost:8080/moduleB
希望這有助於!
我知道這通常不是一個好主意,但由於所有的開發機器都是相同的,所以能夠更容易地檢查出來,而不必擔心也會修改settings.xml。我只想知道是否有可能重寫此行爲。 – johnktims
@John它是,只需在您的POM文件中設置屬性。 –
我已經試過了,我只是得到關於「畸形POM」的錯誤。這裏就是我所說的那樣: ... 本地主機 管理 密碼 <依賴性> ... –
johnktims