指定pom文件,打包指定的module,并且自动打包这个模块所依赖的其他模块。

mvn clean install -f pom.xml -pl vmc-business-parent/vmc-schedule-service -am -Dmaven.test.skip=true -Ptest

maven多线程并行编译。

mvn -T 4 clean install -Dmaven.compile.fork=true -Dmaven.test.skip=true

mvn -T 1C clean install -Dmaven.compile.fork=true -Dmaven.test.skip=true

其中 -T 4表示开启4个线程进行并行,-T 1c表示CPU线程的倍数。

mvn高级构建命令

mvn -h 可以看到很多命令及其用途

  • -am --also-make 同时构建所列模块的依赖模块;

  • -amd -also-make-dependents 同时构建依赖于所列模块的模块;

  • -pl --projects 构建制定的模块,模块间用逗号分隔;

  • -rf -resume-from 从指定的模块恢复反应堆。

    假设有如下聚合模块:account-aggregator ,其依次包含如下几个模块:account-parent, account-email, account-persist;其中,account-email和account-persist模块都继承account-parent模块。

    <modules>
    <module>account-email</module>
    <module>account-persist</module>
    <module>account-parent</module>
    </modules>
  • 例一:

    当执行mvn clean install后会得到如下几个模块:account-aggregator, account-parent, account-email, account-persist。

  • 例二:

    -pl 构建制定模块

    当执行mvn clean install -pl accouont-email,account-persist后会得到如下几个模块:account-email和account-persist。

  • 例三:

    -am 选项可以同时构建所列模块的依赖模块。

    当执行mvn clean install -pl account-email -am 后会得到如下几个模块:account-parent和account-email。

  • 例四:

    -amd 选项可以同时构建依赖于所列模块的模块。

    mvn clean install -pl account-parent -amd 后会得到如下模块:account-parent、account-email和account-persist。

  • 例五:

    -rf 选项可以在完整的反应堆构建顺序基础上,指定从哪个模块开始构建。

    mvn clean install -rf account-email ,由于account-email位于第三,它之后有account-persist,因此会得到如下输出模块:account-email和account-persist。

  • 例六:

    在-pl -am或者-pl -amd的基础上,还能应用-rf参数,以对裁剪后的反应堆再次裁剪。

    mvn clean install -pl account-parent -amd -rf account-email

    其中,-pl 和 -amd参数会得到:account-parent, account-email和account-persist模块,在此基础上 -rf参数制定从account-email开始构建,于是会得到:account-email和account-persist。

mvn高级构建的更多相关文章

  1. Android Gradle Plugin指南(六)——高级构建定制

    原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Advanced-Build-Customization ...

  2. svn + jenkins + maven 实现java环境的自动化构建和部署

    1. 环境说明: 系统CentOS 7 x64 IP:  10.6.0.126 1.1 首先安装配置 svn Centos 7  通过yum 安装svn 既可, 版本为1.7.14 # yum -y ...

  3. Redux 入门到高级教程

    Redux 是 JavaScript 状态容器,提供可预测化的状态管理. (如果你需要一个 WordPress 框架,请查看 Redux Framework.) Redux 除了和 React 一起用 ...

  4. android studio+grade配置构建

    Android 构建系统编译应用资源和源代码,然后将它们打包成可供您测试.部署.签署和分发的 APK.android Studio 使用 Gradle 这一高级构建工具包来自动化执行和管理构建流程,同 ...

  5. [ci]jenkins构建容器项目java-helloworld-非docker plugin模式

    栗子思路说明: 不使用任何docker plugin 使用jenkins server本地(含mvn环境)构建,无jenkins slave jenkins server本地构建的war包,推送dep ...

  6. maven实战(4)-- maven构建自己的jar到本地仓库中

    在平时的开发中,经常需要用到自己以前开发的一个jar包,那么如何使用将自己开发的jar提交到本地仓库中,供其他的项目依赖呢?主要有三种方法: (1)使用mvn的构建命令:mvn clean insta ...

  7. 使用maven-pom进行依赖管理与自动构建

    使用maven-pom进行依赖管理与自动构建 span.kw { color: #007020; font-weight: bold; } /* Keyword */ code > span.d ...

  8. idea ssm项目出现日志中文乱码,封装的json中的msg字段中文乱码(但是json封装的bean中的字段不乱码)等其他各种项目下的中文乱码解决方案

    开头划重点!(敲黑板):rebuild和mvn package的循环往复好几次的操作是解决这个问题的最主要的方法! 经过多次试验,发现这样做就可以正常显示中文了 我说为什么有时候乱码,有时候中文正常, ...

  9. pytest+jenkins+allure 生成测试报告发送邮件

    前言第一部分:Pycharm for Gitee1. pycharm安装gitee插件2. gitee关联本地Git快速设置- 如果你知道该怎么操作,直接使用下面的地址简易的命令行入门教程:3. Gi ...

随机推荐

  1. vs2008,windows mobile 6 搭建PDA开发环境相关软件下载

    1.Windows Mobile 6.5 Professional Developer Tool Kit (CHS).msi 下载地址:https://download.microsoft.com/d ...

  2. python基础知识(字符串)

    定义字符串 ' '单引号 " "双引号  只能用于单行 '" '"三引号  可以用于多行 拼接字符串使用  +号链接 字符串只能链接字符串其他类型字符串需要用s ...

  3. MATLAB灰色关联度分析

    目录 1.释名 2.举例 3.操作步骤与原理详解 4.总结 5.附录:MATLAB代码 @ 1.释名 灰色关联度分析(Grey Relation Analysis,GRA),是一种多因素统计分析的方法 ...

  4. Redis高级主题

    Redis高级主题   持久化 Redis 支持持久化, 其持久化数据有两种方式. 两种可以同时使用. 如果同时使用, Reids 在重启时将使用 AOF 方式来还原数据. RDB 按照一定策略定时同 ...

  5. azkaban安装步骤

    安装包 1.得到软件包 azkaban-executor-server-2.5.0.tar.gz azkaban-sql-script-2.5.0.tar.gz azkaban-web-server- ...

  6. 【转】在C#中使用Json.Net进行序列化和反序列化及定制化

    作者:Minotauros 原文地址:在C#中使用Json.Net进行序列化和反序列化及定制化 序列化(Serialize)是将对象转换成字节流,并将其用于存储或传输的过程,主要用途是保存对象的状态, ...

  7. maven中scope属性的

    Dependency Scope 在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前<scope>可以使用5个值: * c ...

  8. 常用Java字段的正则校验

    正则表达式: 单个字符的匹配规则如下: 多个字符的匹配规则如下: 复杂匹配规则主要有: 常用正则表达式校验规则: 一.校验数字的表达式 1.数字:^[0-9]*$ 2.n位的数字:^\d{n}$ 3. ...

  9. ubuntu 16.04下ssh访问提示错误

    liuyan@ubuntu:/etc/init.d$ sudo apt-get install openssh-server -yReading package lists... DoneBuildi ...

  10. 同步(Synchronous)和异步(Asynchronous)方法的区别

    同步(Synchronous)和异步(Asynchronous)方法的区别 在讲之前,我们先来看<Computer Organization>中对于同步和异步的一个例子: 同步读写和异步读 ...