2015-08-26 92 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> 
相关问题