3

我正在使用多模块 Maven 项目。一些模块只是 JAR,但其中一些是 WAR(有时 WAR 是其他子模块的子模块)。

我正在使用 tomcat 插件的那些 WAR 模块。例如:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>tomcat-maven-plugin</artifactId>
            <version>1.1</version>
            <configuration>
                <server>my_local_tomcat</server>
                <path>/registration</path>
                <url>http://localhost:8080/manager/text</url>
            </configuration>
        </plugin>

现在我必须进入根目录,然后执行mvn clean install,然后进入包含 WAR 的子模块并mvn tomcat:redeploy为每个模块执行。

是否可以从根模块强制Maven查找 WAR 并重新部署它们?

4

1 回答 1

3

在要部署的每个模块中,添加一个 tomcat-deploy 配置文件

  <profiles>
<profile>
  <id>tomcat-deploy</id>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <configuration>
          <server>my_local_tomcat</server>
          <path>/registration</path>
          <url>http://localhost:8080/manager/text</url>
        </configuration>
        <executions>
          <execution>
            <id>deploy-war</id>
            <phase>install</phase>
            <goals>
              <goal>deploy-only</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</profile>

现在运行: mvn install -Ptomcat-deploy

于 2013-02-25T00:36:44.480 回答