Копирование файлов из моего проекта в Maven - PullRequest
22 голосов
/ 06 августа 2010

Можно ли копировать папки из моего проекта в определенное место на каком-то этапе Maven? Кто-нибудь знает как?

Ответы [ 3 ]

29 голосов
/ 06 августа 2010

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>
21 голосов
/ 06 августа 2010

Взгляните на плагин 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 голосов
/ 14 февраля 2016

Решение, аналогичное @ mort's 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> не рекомендуется в пользу<target> узел с maven-antrun-plugin 1.5 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...