mvn 阶段被执行几次

对于命令:

mvn -e -U clean compile package install deploy

其中,compile截断究竟被执行几次呢?

实际上是compile被执行4次,package被执行3次,install被执行2次,deploy被执行一次。之所以这样,是跟maven的生命周期有关,具体可参见:http://juvenshun.iteye.com/blog/213959

那么,如何验证呢?其实也很容易,在build元素中添加一个task,并将其指定为compile阶段(或者其他的),task的任务是输出一些内容,用以标记改阶段被执行几次。如下所示:

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.1</version>
                <executions>
                    <execution>
                        <phase>compile</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <tasks>
                                <echo>this is a message from compile phase!</echo>
                            </tasks>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
</build>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`mvn deploy` 命令是通过 Maven 命令行工具执行的,执行该命令时,Maven 会按照以下步骤解析并执行该命令: 1. 解析 `pom.xml` 文件。Maven 会读取项目根目录下的 `pom.xml` 文件,解析出项目的构建配置和依赖关系,并根据这些信息构建项目。 2. 执行 Maven 生命周期Maven 有三个标准的生命周期,分别是 `clean` 生命周期、`default` 生命周期和 `site` 生命周期。`default` 生命周期Maven 的主要生命周期,包括了常用的编译、测试、打包、安装和部署等操作。当执行 `mvn deploy` 命令时,Maven 会按照 `default` 生命周期的顺序执行其中的阶段,包括编译代码、运行测试、打包构件、上传构件等操作。 3. 上传构件到远程 Maven 仓库。当执行 `deploy` 阶段时,Maven 会将构建好的 jar 或 war 文件上传到指定的远程 Maven 仓库中。在上传前,Maven 会根据 `settings.xml` 文件中的配置信息,确定要上传到哪个仓库以及使用哪个账号进行认证。 4. 记录元数据信息到远程 Maven 仓库。除了上传构件,Maven 还会将项目的元数据信息(如项目名称、版本号、依赖关系等)记录到远程 Maven 仓库中的相应位置,以供其他开发者或项目使用。 总之,`mvn deploy` 命令的执行过程是一个复杂的过程,Maven 需要根据项目的配置信息和依赖关系,将代码编译、测试、打包、上传,并记录元数据信息,以便其他开发者或项目使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值