使用pom自动复制文件

时间:2016-11-23 21:28:42

标签: maven intellij-idea kotlin

我的Intellij项目中有3个模块:

  • Java模块
  • 一个Kotlin模块
  • 一个misc文件模块

我在misc文件模块中有一个XSD文件,我需要在Kotlin模块的测试资源文件夹中有一个完整的副本。即每当我更新它时,我都需要将其复制到Kotlin模块。

如何更新我的Kotlin模块的maven POM文件,以便它可以自动复制此文件?

1 个答案:

答案 0 :(得分:0)

您无法直接使用Maven复制文件,但有一个插件可用于执行Ant任务。其中一个预定义任务是copy,可以使用如下所示。它可以挂钩Maven执行的各个阶段。这可能需要一些摆弄。

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-antrun-plugin</artifactId>
      <version>1.8</version>
      <executions>
        <execution>
          <id>copy-war-to-docker</id>
          <phase>package</phase>
          <goals>
            <goal>run</goal>
          </goals>
          <configuration>
            <target>
              <copy file="${build.warFile}"
                    tofile="${basedir}/docker/${build.name}.war"/>
            </target>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>