Maven的-pl -am -amd参数学习
昨天maven的deploy任务需要只选择单个模块并且把它依赖的模块一起打包,第一时间便想到了-pl参数,然后就开始处理,但是因为之前只看了一下命令的介绍,竟然花了近半小时才完全跑通,故记录此文。
假设现有项目结构如下
dailylog-parent
|-dailylog-common
|-dailylog-web
- 三个文件夹处在同级目录中
- dailylog-web依赖dailylog-common
- dailylog-parent管理dailylog-common和dailylog-web。
根据资料已知:
参数 | 全称 | 释义 | 说明 |
-pl | --projects | Build specified reactor projects instead of all projects |
选项后可跟随{groupId}:{artifactId}或者所选模块的相对路径(多个模块以逗号分隔) |
-am | --also-make | If project list is specified, also build projects required by the list |
表示同时处理选定模块所依赖的模块 |
-amd | --also-make-dependents | If project list is specified, also build projects that depend on projects on the list |
表示同时处理依赖选定模块的模块 |
-N | --Non-recursive | Build projects without recursive |
表示不递归子模块 |
-rf | --resume-from | Resume reactor from specified project |
表示从指定模块开始继续处理 |
以下是在maven-3.3.9中的试验
1. 在dailylog-parent目录运行`mvn clean install -pl org.lxp:dailylog-web -am`,结果
- dailylog-common成功安装到本地库
- dailylog-parent成功安装到本地库
- dailylog-web成功安装到本地库
该命令等价于`mvn clean install -pl ../dailylog-web -am`
2. 在dailylog-parent目录运行`mvn clean install -pl ../dailylog-common -am`,结果
- dailylog-common成功安装到本地库
- dailylog-parent成功安装到本地库
3. 在dailylog-parent目录运行`mvn clean install -pl ../dailylog-common -amd`,结果
- dailylog-common成功安装到本地库
- dailylog-web成功安装到本地库
由于dailylog-parent并不依赖dailylog-common模块,故没有被安装
4. 在dailylog-parent目录运行`mvn clean install -pl ../dailylog-common,../dailylog-parent -amd`,结果
- dailylog-common成功安装到本地库
- dailylog-parent成功安装到本地库
- dailylog-web成功安装到本地库
5. 在dailylog-parent目录运行`mvn clean install -N`,结果
- dailylog-parent成功安装到本地库
-N表示不递归,那么dailylog-parent管理的子模块不会被同时安装
6. 在dailylog-parent目录运行`mvn clean install -pl ../dailylog-parent -N`,结果
- dailylog-parent成功安装到本地库
7. 在dailylog-parent目录运行`mvn clean install -rf ../dailylog-common`,结果
- dailylog-common成功安装到本地库
- dailylog-web成功安装到本地库
Maven的-pl -am -amd参数学习的更多相关文章
- Maven的-pl -am -amd参数
本文转载自Maven的-pl -am -amd参数学习 昨天maven的deploy任务需要只选择单个模块并且把它依赖的模块一起打包,第一时间便想到了-pl参数,然后就开始处理,但是因为之前只看了一下 ...
- maven 常见命令 学习笔记(一)之 -pl -am -amd
假设现有项目结构如下 dailylog-parent|-dailylog-common|-dailylog-web 三个文件夹处在同级目录中 dailylog-web依赖dailylog-common ...
- Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置
Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置 JDK下载安装请自行,并设置好环境变量1 查看Java版本C:\Use ...
- (转)如何在maven环境中设置JVM参数
有时候我们需要设定maven环境下的JVM参数,以便通过maven执行的命令或启动的系统能得到它们需要的参数设定.比如:当我们使用jetty:run启动jetty服务器时,在进行热部署时会经常发生:J ...
- [转]Python3之max key参数学习记录
Python3之max key参数学习记录 转自https://www.cnblogs.com/zhangwei22/p/9892422.html 今天用Python写脚本,想要实现这样的功能:对于给 ...
- ORACLE PL/SQL异常处理(Exception)学习笔记
1.PL/SQL错误类型 错误类型 报告者 处理方法 编译时错误 PL/SQL编译器 交互式地处理:编译器报告错误,你必须更正这些错误 运行时错误 PL/SQL运行时引擎 程序化地处理:异常由异常处理 ...
- AMD规范学习笔记
背景 NodeJS的一套比较简洁 Moudles 规范, 使得在服务器端的模块化变得更加简单.很长一段时间,很多公司或者项目都有自己的一套模块化机制, 却未能形成一套统一的标准, NodeJS的Mou ...
- maven profiles、filters、resources学习笔记 及 常用 plugin demo
这里只记了学习以下博客后,自己做的一个总结. 来源:http://blog.csdn.net/fengchao2016/article/details/72726101 profiles定义了一些不同 ...
- PL/SQL语言的学习笔记
一.PL/SQL简介1.什么是PL/SQL程序?(PL/SQL是对SQL语言的一个扩展,从而形成的一个语言) 2.PL/SQL语言的特点(操作Orcale数据库效率最高的就是PL/SQL语言,而不是C ...
随机推荐
- 后缀排序(codevs 1500)
题目描述 Description 天凯是MIT的新生.Prof. HandsomeG给了他一个长度为n的由小写字母构成的字符串,要求他把该字符串的n个后缀(suffix)从小到大排序. 何谓后缀?假设 ...
- CF830B:Cards Sorting
对叠放着的n张牌,第i张牌写有数字Ai,进行操作:将牌堆顶的牌取出,若是当前牌堆最小值就扔掉,否则放到牌堆底,求牌堆空时操作次数. 怎么看怎么像约瑟夫..不过约瑟夫DP我不太熟,于是就yy了一下 “当 ...
- Python基础教程笔记——第7章:更加抽象(类)
下面进入Python的面向对象: 对象的魔力: 多态:---可以对不同类的对象使用同样的操作 封装:---对外部隐藏对象内部的工作方式 继承:---以普通的类为基础建立专门的类对象 (1)多态: is ...
- vagrant的学习 之 ThinkPHP3.2
vagrant的学习 之 ThinkPHP3.2 (1)在web目录下新建tp32目录: cd /home/www/ mkdir tp32 (2)下载框架 我从ThinkPHP官网下载了ThinkPH ...
- windows7 下安装使用memcached
Memcached 安装使用 本地环境:Windows7 64位web环境:wamp集成环境,php版本:PHP Version 7.1.17 学习参考网站: RUNOOB.COM官网 http:/ ...
- Construct Binary Tree from Preorder and Inorder Traversal (DFS,参考)
Given preorder and inorder traversal of a tree, construct the binary tree. Note:You may assume that ...
- vue2.0单元测试(一)
1.在vue init webpack XXX创建项目的时候 最后2步选择YES就启动了vue单元测试开始了 2.测试是使用karma+mocha框架来实现的方法,安装虚拟浏览器模块Phantom ...
- [Bash] View Files and Folders in Bash
Sometimes when working at the command line, it can be handy to view a file’s contents right in the t ...
- CSDN管理员看过来
CSDN管理员看过来 你好.CSDN管理员,我想我被特殊对待了.我看了一些人的博客.终于发现仅仅有我博客的数据有异常.这算是给我的惊喜吗? 言归正传,我发现我博客上两个地方出现的文章的总数对不上.原创 ...
- Android使用adb获得activity堆栈信息
很实用的命令: adb shell dumpsys activity 该命令能够看到当前执行的是哪个activity,执行的一些进程等 首先能够看到执行的进程: ACTIVITY MANAGER RU ...