2016-09-06 88 views
1

是否可以在~/.m2/settings.xml中配置<outputDirectory>/path/to/tomcat/webapps/</outputDirectory>,這樣每個使用maven-war-plugin的maven項目默認都會設置此屬性?我的settings.xmlMaven:如何全局覆蓋maven-war-plugin的outputDirectory

Profiles部分(這不起作用):

<profiles> 
    <profile> 
     <id>localhost</id>    
     <activation> 
      <activeByDefault>true</activeByDefault> 
     </activation> 
     <build> 
      <directory>/tomcat/webapps</directory> 
      <plugins> 
       <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-war-plugin</artifactId> 
        <version>3.0.0</version> 
        <configuration> 
         <outputDirectory>/tomcat/webapps</outputDirectory> 
        </configuration> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 
<profiles> 

我想在運行mvn package每一個項目時,被放置在一個單一的/webapps目錄下的所有文件war

必須在不修改項目pom.xml的情況下完成。

+0

它看起來像你想部署到tomcat的這種目的,你應該尋找tomcat-maven-plugin,它提供了適當的目標來處理部署... – khmarbaise

+0

好!但是如何在全球範圍內設置它呢? –

回答

1

讓我建議一種不同的方法。使用resources:copy-resources目標並將其綁定到package階段。嘗試在settings.xml中解決這個問題是可能的,但是在你的pom中需要更多的更改,並且可能會更難理解。