Возможно ли скопировать папки из моего проекта в определенное место во время некоторой фазы Maven? Кто-нибудь знает, как?
Копирование файлов из моего проекта в Maven
Ответ 1
Способ Maven сделать это будет использовать цель copy-resources
в maven-resources-plugin
От http://maven.apache.org/plugins/maven-resources-plugin/examples/copy-resources.html
<project>
...
<build>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>copy-resources</id>
<!-- here the phase you need -->
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/extra-resources</outputDirectory>
<resources>
<resource>
<directory>src/non-packaged-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
...
</build>
...
</project>
Ответ 2
Взгляните на плагин maven-antrun. Вы можете скопировать файл в любой фазе maven следующим образом:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>copy</id>
<phase>compile</phase>
<configuration>
<tasks>
<copy file="myFileSource" tofile="MyFileDest"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
Ответ 3
Решение, подобное @mort one с maven-antrun-plugin 1.8:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>copy</id>
<phase>compile</phase>
<configuration>
<target>
<copy file="sourceFile" tofile="targetFile"/>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
Обратите внимание, что <tasks>
node устарел в пользу <target>
node от maven-antrun-plugin 1.5.