繁体   English   中英

Maven执行插件目标?

[英]maven execution of plugin goal?

我是Maven的新手,正在学习如何以及何时在插件中执行阶段/目标

说我的pom中有以下代码片段

 <plugin>
   <groupId>org.codehaus.modello</groupId>
   <artifactId>modello-maven-plugin</artifactId>
   <version>1.4</version>
 </plugin>

现在,如果我执行mvn install,将执行安装之前出现的modello的所有阶段(以及与每个阶段相对应的所有目标)。 对?

但是,如果进行以下修改以引入特定目标,则仅将执行一个目标(即Java目标)(因为它位于install阶段之前的generate-sources阶段)。 那是对的吗?

 <plugin>
   <groupId>org.codehaus.modello</groupId>
   <artifactId>modello-maven-plugin</artifactId>
   <version>1.4</version>
   <executions>
     <execution>
       <goals>
         <goal>java</goal>
       </goals>
     </execution>
   </executions>
 </plugin>

不,它不是那样工作的。 首先,请使用mvn verify (而不是安装),除非您确实希望将项目复制到本地存储库中。

如果仅指定一个插件,而不是默认生命周期的一部分(例如,已经为默认生命周期指定了maven-compiler-plugin,则所有jar都需要编译,对吗?),则不会发生任何事情。 因此,您需要指定在一个执行块中需要执行哪些目标。 在某些情况下,目标具有要绑定的默认阶段,例如, modello:java默认情况下绑定到generate-sources -phase。 在这种情况下,您不必在执行块中指定<phase>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM