1

我的pom.xml包含

    <plugin>                                                            
        <artifactId>maven-war-plugin</artifactId>
        <version>2.3</version>                                          
            <configuration>                                                 
                <warName>${project.artifactId}</warName>
                <outputDirectory>${wlp.install.dir}/usr/servers/liberty/apps</outputDirectory>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>            
    </plugin>

当我运行时,mvn package我可以看到这一步正在运行:

[信息] --- maven-war-plugin:2.3:war (default-war) @frontEnd ---

那太棒了。但是,我还想在创建文件之前运行一个shell脚本war我尝试添加

<plugin>                                                            
    <artifactId>maven-antrun-plugin</artifactId>                    
    <version>1.7</version>                                          
    <configuration>                                                 
        <tasks>                                                     
            <exec dir="${basedir}"
                executable="${basedir}/src/main/webapp/concat"/>
        </tasks>                                                    
    </configuration>                                                
</plugin>

maven-war插件之前,但它不运行。我什至没有antrunmvn. 将<tasks>元素添加到<configuration>formaven-war-plugin也无济于事。

我能做些什么来让 maven 简单地运行一个脚本作为其中的一部分mvn package

4

1 回答 1

2

pom.xml 中的位置无关紧要,您必须将 maven-antrun-plugin 执行绑定到正确的生命周期阶段(例如编译),如下所示:

  <plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.7</version>
    <executions>
      <execution>
        <phase> <!-- a lifecycle phase --> </phase>
        <configuration>
          <target>

            <!--
              Place any Ant task here. You can add anything
              you can add between <target> and </target> in a
              build.xml.
            -->

          </target>
        </configuration>
        <goals>
          <goal>run</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

有关更多详细信息,请参阅maven-antrun-plugin 使用页面和构建生命周期的 Maven 介绍以获取更多参考。

于 2013-09-24T21:17:58.523 回答