Maven,即将建立战争之前运行java方法或脚本

时间:2014-08-17 19:14:49

标签: java maven java-ee maven-plugin

我正在考虑使用模板引擎来生成web.xml和其他东西。

是否可以在 maven install命令之前运行java文件或脚本?或者在战争产生之前。

我不确定这个阶段应该是什么,但基本上在其他任何人之前查看web.xml,以便我可以将其触及创建一个新的有效

1 个答案:

答案 0 :(得分:4)

您可以使用exec-maven-plugin运行程序/脚本(使用exec goal)或Java程序(使用java goal)。

package之前的阶段是prepare-package(请参阅Lifecycle Reference中的默认生命周期),因此您可以使用它。但您可能更愿意在生命周期的早期生成web.xml(甚至早在generate-resources)。

将这些放在一起,您可以尝试这样的事情:

  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <version>1.3.2</version>
    <executions>
      <execution>
        <phase>prepare-package</phase>
        <goals>
          <goal>exec</goal>
        </goals>
      </execution>
    </executions>
    <configuration>
      <executable>your_packaging_script</executable>
      <!-- optional -->
      <workingDirectory>/tmp</workingDirectory>
      <arguments>
        <argument>--some-option</argument>
      </arguments>
    </configuration>
  </plugin>

或者,您可以考虑writing your own plugin,特别是如果您认为这个想法对多个项目有用。