2015-08-26 129 views
1

我已經用maven創建了一個java項目。在我的項目中(在src/main/resources下),有一些資源文件需要複製到目標/類中。Maven安裝生命週期階段不調用資源階段

我添加幾行代碼寫進我的POM XML:

<build> 
    <resources> 
     <resource> 
      <directory>src/main/resources</directory> 
      <includes> 
       <include>**/*.*</include> 
      </includes> 
     </resource> 
    </resources> 
</build> 

當我運行MVN資源:通過在命令行資源我得到的資源文件被複制到目標/類(這樣的資源相在生命週期中工作)。但是,當我輸入mvn install:在cmd中安裝時,資源文件不會被複制到目標/類中。

我得到:

[INFO] 
[INFO] --- maven-install-plugin:2.4:install (default-install) @ mqm-data-population --- 
[INFO] Installing C:\xxx\xlation\pom.xml to C:\Users\xxx\xon-12.50.14-SNAPSHOT.pom 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.278 s 

似乎在生命週期中安裝階段不會調用資源相或類似的東西..

我認爲這可能是rellevent的資源插件所以我說:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-resources-plugin</artifactId> 
      <version>2.7</version> 
     </plugin> 
    </plugins> 

    <resources> 
     <resource> 
      <directory>src/main/resources</directory> 
      <includes> 
       <include>**/*.*</include> 
      </includes> 
     </resource> 
    </resources> 
</build> 

沒有幫助以及....

有人可以幫忙嗎? 謝謝。


解決


快速搜索後,在網上我發現了,爲什麼資源文件沒有被複制到我的目標/班。我需要使用Maven資源插件,並指出我希望將資源複製到目標/類中的階段(在我的情況中,「安裝」階段......)。

看這裏後: https://maven.apache.org/plugins/maven-resources-plugin/examples/copy-resources.html

我說這對我的pom.xml,並正在努力...

+0

修改你想看看我的[POM在這個答案](http://stackoverflow.com/a/25543585/3127111)?快速瀏覽一下,你的代碼片段對我來說很合適(我從IDE運行Maven,我認爲它等於'mvn install')。 – watery

+1

你試過運行'mvn install'嗎? –

+1

首先,如果您調用'mvn install'而不是'mvn install:install',則完全不同的是,您不需要定義默認值'src/main/resources'。第一個調用包含資源部分的生命週期,而第二個只調用不運行生命週期的適當插件的目標。你不需要資源插件,因爲它是[默認生命週期]的一部分(https://maven.apache.org/ref/3.2.2/maven-core/default-bindings.html)。 – khmarbaise

回答

0

也許您的默認配置文件是不活躍加上真實

<profiles> 
<profile> 
<id>development</id> 
<activation> 
<activeByDefault>true</activeByDefault> 
</activation> 
<build> 
<resources> 
<resource> 
<directory>src/main/resources</directory> 
<includes> 
<include>**/*.*</include> 
</includes> 
相關問題