2012-04-04 1 views
0

Во время сборки мне нужно скопировать 5 properties файлов из моего рабочего пространства проекта src/main/resources/my в папку C:\my (я разрабатываю Windows 7). C:\my есть, но пустой.Maven: скопируйте файл из рабочего пространства в папку, находящуюся за пределами цели

Я использую следующий код в моем файле pom.xml, но файлы не копируются.

Во время сборки, я не получаю ошибку, но я получаю следующий результат:

[INFO] --- maven-resources-plugin:2.5:copy-resources (copy-my-resources) @ my-webapp --- 
[debug] execute contextualize 
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent! 
[INFO] Copying 5 resources 

Обратите внимание, что это не говорит [INFO] Copying 5 resources to somewhere, как это обычно бывает, когда копия успешно.

Однако файлы не копируются в C:\my.

Не могли бы вы увидеть, что я должен изменить в своем xml-коде?

Вот соответствующий код:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-resources-plugin</artifactId> 
    <version>2.5</version> 
    <executions> 
      <execution> 
        <id>copy-my-resources</id> 

        <phase>process-resources</phase> 

        <goals> 
          <goal>copy-resources</goal> 
        </goals> 
        <configuration> 

          <!-- overwrite! --> 
          <overwrite>true</overwrite> 

          <outputDirectory>${env.HOMEDRIVE}/my</outputDirectory> 
          <resources> 
            <resource> 
              <directory>src/main/resources/my</directory> 
              <filtering>false</filtering> 
              <includes> 
               <include>**/*.properties</include> 
              </includes> 
            </resource> 
          </resources> 
        </configuration> 
      </execution> 
    </executions> 
</plugin> 

ответ

1

Вы можете run mvn -X ... команду, чтобы получить более подробную отладочную всех плагинов.

Также убедитесь, что определено свойство $ {env.HOMEDRIVE} и существует $ {env.HOMEDRIVE}/моя папка.

2

Чтобы избавиться от предупреждения, вы должны определить свойство в вашем ПОМЕ:

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

Кроме положить что-то в вашей сборке подобно HOMEDRIVE и т.д. сделает ваш билд не переносим. Лучшим решением было бы создать пакет, такой как .zip, который содержит всю конфигурацию для вашего приложения.