2015-10-14 69 views
0

我定义在pom.xml中的Maven插件如下:如何确定优先顺序或订购Maven插件执行?

<build> 
    <outputDirectory>reports/maven/classes</outputDirectory> 
    <testOutputDirectory>reports/maven/test-classes</testOutputDirectory> 
    <plugins> 
     <plugin> 
      <artifactId>maven-clean-plugin</artifactId> 
      <version>2.6.1</version> 
      <configuration> 
       <filesets> 
        <fileset> 
         <directory>${basedir}/reports/maven/mail</directory> 
         <includes> 
          <include>**/*</include> 
         </includes> 
         <followSymlinks>false</followSymlinks> 
        </fileset> 
       </filesets> 
      </configuration> 
     </plugin> 

     <plugin> 
      <inherited>true</inherited> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <configuration> 
       <encoding>UTF-8</encoding> 
      </configuration> 
     </plugin> 

     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-surefire-plugin</artifactId> 
      <version>2.12.2</version> 
      <configuration> 
       <reportsDirectory>${basedir}/reports/maven/mail</reportsDirectory> 
       <suiteXmlFiles> 
        <suiteXmlFile>${basedir}/src/test/resources/testng.xml</suiteXmlFile> 
       </suiteXmlFiles> 
       <includes> 
        <include>**/*.java</include> 
       </includes> 
       <!-- <testFailureIgnore>true</testFailureIgnore> --> 
       <!-- <properties> Setting ReportNG listeners <property> <name>listener</name> 
        <value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value> 
        </property> </properties> --> 
      </configuration> 
     </plugin> 

     <plugin> 
      <artifactId>maven-resources-plugin</artifactId> 
      <version>2.6</version> 
      <executions> 
       <execution> 
        <id>copy-resources</id> 
        <!-- here the phase you need --> 
        <phase>validate</phase> 
        <goals> 
         <goal>copy-resources</goal> 
        </goals> 
        <configuration> 
         <outputDirectory>${basedir}/reports/maven/archieve/new</outputDirectory> 
         <resources> 
          <resource> 
           <directory>${basedir}/reports/maven/mail</directory> 
           <filtering>true</filtering> 
          </resource> 
         </resources> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

     <plugin> 
      <groupId>ch.fortysix</groupId> 
      <artifactId>maven-postman-plugin</artifactId> 
      <version>0.1.6</version> 
      <executions> 
       <execution> 
        <id>send_an_email</id> 
        <phase>test</phase> 
        <goals> 
         <goal>send-mail</goal> 
        </goals> 
        <inherited>true</inherited> 
        <configuration> 
         <mailhost>smtp.mail.yahoo.com</mailhost> 
         <mailport>465</mailport> 
         <mailssl>true</mailssl> 
         <mailAltConfig>true</mailAltConfig> 
         <mailuser>[email protected]</mailuser> 
         <mailpassword>************</mailpassword> 

         <from>[email protected]</from> 
         <receivers> 
          <receiver>[email protected]</receiver> 
          <receiver>*********</receiver> 
         </receivers> 

         <subject>Demo project - Smoke results</subject> 
         <failonerror>false</failonerror> 
         <htmlMessage> 
            <![CDATA[ 
             <p>New Build Arrived! </p><br> 
             <p>Check the smoke results from attachment :)</p>          
            ]]> 
         </htmlMessage> 

         <fileSets> 
          <fileSet> 
           <directory>${basedir}/reports/maven/mail</directory> 
           <includes> 
            <include>**/html/index.html</include> 
           </includes> 
          </fileSet> 
         </fileSets> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

    </plugins> 
</build> 

但Maven插件,“行家 - 资源 - 插件”似乎在第一,而我需要同样在最后运行运行。请提供解决方案以运行'maven-resources-plugin'。提前致谢!

所使用的工具:

的Maven 3.1.0

JDK 7

+3

我建议你阅读maven文档中的[生命周期介绍](https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html)。这解释了maven如何决定运行哪个插件以及何时可以影响它。 – Augusto

+0

这有可能优先考虑吗? –

+0

谢谢! @Augusto它的工作 –

回答