首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何调用maven默认生命周期

如何调用maven默认生命周期
EN

Stack Overflow用户
提问于 2012-07-19 15:48:58
回答 3查看 3.9K关注 0票数 4

如果我打电话给

代码语言:javascript
运行
复制
mvn clean install

maven知道clean是一个生命周期,而安装是默认生命周期的一个阶段

如果我打电话给

代码语言:javascript
运行
复制
mvn deploy

maven将按顺序执行默认生命周期的所有阶段。

有没有办法通过给出生命周期的名称来调用默认的生命周期(而不是执行生命周期的最后一个阶段)?

编辑:所以问题是:有没有一个命令

代码语言:javascript
运行
复制
mvn lifecyclename

开始执行默认生命周期?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-19 17:03:58

这似乎是个误会。进一步的阅读可以澄清

代码语言:javascript
运行
复制
mvn clean

不会调用整个干净的生命周期。事实上,在clean生命周期中有一个clean阶段。并且该命令将执行此阶段,而不是生命周期。

票数 5
EN

Stack Overflow用户

发布于 2012-07-19 17:17:38

没有根据生命周期名称运行生命周期的命令。所以你不能 do a mvn Default然后期望它运行到Default:deploy。您将不得不提到一个周期中的任务,如testpackageclean,拥有此任务的生命周期将会激活。

将生命周期作为一个参数是没有意义的。这将是令人困惑的。例如,运行mvn clean是“清理生命周期”还是“清理”任务?

或者,键入mvn clean将运行清理生命周期会更加冗长;而mvn clean:clean将运行清理生命周期直到clean任务。

Maven有三个生命周期。执行任何生命周期的任务(例如task_N)将导致执行整个生命周期,直到该任务(task_N)为止。这三个生命周期是Clean、Default和Site。

有关更多详细信息,请参阅此处Introduction to Maven Life-cycles and task order

你可以看到,当你执行的时候,比如说,mvn test,这些就是按照这个顺序执行的东西

验证>初始化>生成源>流程源>生成资源>流程资源>编译>流程类>后期流程>生成测试源>流程测试源>生成测试资源>流程测试资源>测试编译>流程测试类>测试

您不能跳过任何默认任务。你可以钩住在任务中执行的插件。

票数 8
EN

Stack Overflow用户

发布于 2012-07-19 16:03:36

据我所知,您不能执行孤立的生命周期阶段。

但是你可以执行一个独立的插件目标。

代码语言:javascript
运行
复制
mvn deploy:deploy

这不会触发任何与deploy阶段相关的插件执行。但是你总是可以在命令行中添加更多的插件执行。因此,我最好使用一个配置文件来跳过所有插件的执行。

如果想要执行绑定到deploy阶段myplugin:mygoal,那么

代码语言:javascript
运行
复制
mvn myplugin:mygoal deploy:deploy

但是执行的配置必须在cli中。

但是你最好跳过你不想要的插件执行。仅在命令行中跳过testintegration-test。但是您可以通过一个配置文件来实现这一点,该配置文件将默认周期的配置设置为跳过。

代码语言:javascript
运行
复制
<profiles>
  <profile>
    <id>skip</id>
      ...
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <configuration>
            <skip>true</skip>
            </configuration>
          </plugin>
  ...

然后用召唤

代码语言:javascript
运行
复制
mvn deploy -Pskip
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11556170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档