• 发布本地jar到私服 命令

    mvn deploy:deploy-file -Dmaven.test.skip=true -Dfile=D:\Downloads\OJDBC-Full\ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.4 -Dpackaging=jar -DrepositoryId=releases -Durl=http://192.168.0.168:8081/repository/maven-releases/

  • 持续集成服务器上的集成命令

    打包jar

    mvn clean install -B -e -U -Dmaven.repo.local=/home/juven/ci/foo-repo/

    发布jar到私服

    mvn clean deploy -B -e -U -Dmaven.repo.local=/home/juven/ci/foo-repo/

    在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不就是 mvn clean install 么?事实上比较好的集成命令会稍微复杂些,下面是一些总结:
    1. 不要忘了clean: clean能够保证上一次构建的输出不会影响到本次构建。
    2. 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用,这一点在前面已经详细论述。
    3. 使用-U参数: 该参数能强制让Maven检查所有SNAPSHOT依赖更新,确保集成基于最新的状态,如果没有该参数,Maven默认以天为单位检查更新,而持续集成的频率应该比这高很多。

      使用-e参数:如果构建出现异常,该参数能让Maven打印完整的stack trace,以方便分析错误原因。
    4. 使用-Dmaven.repo.local参数:如果持续集成服务器有很多任务,每个任务都会使用本地仓库,下载依赖至本地仓库,为了避免这种多线程使用本地仓库可能会引起的冲突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/这样的参数为每个任务分配本地仓库。
    5. 使用-B参数:该参数表示让Maven使用批处理模式构建项目,能够避免一些需要人工参与交互而造成的挂起状态。
    6. 使用-X参数:开启DEBUG模式。
  • pom-config 插件使用 (自定义的maven插件)

    修改pom properties 里节点的版本号

    mvn com.zy:pom-config:1.0.1:pom-config -Dparams="hiip-user-api.version=0.44.1-SNAPSHOT"

  • 修改全模块版本号

    • A 执行以下命令 mvn versions:set -DoldVersion=* -DnewVersion=1.0.1-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true 如果还有没有修改到的。执行下方的命令重试。 mvn versions:update-child-modules

    • B 执行编译打包的命令 mvn clean install -DskipTests

    • C 查看依赖树的版本是否修改成功 mvn dependency:tree -Dverboss -Dincludes=${project.groupId}{project.artifactId}

    • D 失败就回退 mvn versions:revert

    • E 成功则提交 mvn versions:commit

    • 参数默认值说明

      指令 说明
      allowSnapshots false 是否更新-snapshot快照版
      artifactId ${project.artifactId} 指定artifactId
      generateBackupPoms true 是否备份pom文件
      groupId ${project.groupId} 指定groupId
      newVersion 设置的新版本号
      nextSnapshot false 更新版本号为下一个快照版本号
      oldVersion ${project.version} 指定需要更新的版本号可以使用缺省‘*’
      processAllModules false 是否更新目录下所有模块无论是否声明父子节点
      processDependencies true 是否更新依赖其的版本号
      processParent true 是否更新父节点的版本号
      processPlugins true 是否更新插件中的版本号
      processProject true 是否更新模块自身的版本号
      removeSnapshot false 移除snapshot快照版本,使之为release稳定版
      updateMatchingVersions true 是否更新在子模块中显式指定的匹配版本(如/项目/版本)。

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

maven 一些高级用法命令的更多相关文章

  1. nmap命令-----高级用法

    探测主机存活常用方式 (1)-sP :进行ping扫描 打印出对ping扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):  下面去扫描10.0.3.0/24这个网段的的主机 nmap ...

  2. linux中find命令高级用法

    前言 在<Linux中的文件查找技巧>一文中,我们已经知道了文件查找的基本方法,今天我们介绍find命令的一些高级使用技巧.它能满足我们一些更加复杂的需求. 查找空文件或空目录 有时候需要 ...

  3. SQL server 存储过程 C#调用Windows CMD命令并返回输出结果 Mysql删除重复数据保留最小的id C# 取字符串中间文本 取字符串左边 取字符串右边 C# JSON格式数据高级用法

    create proc insertLog@Title nvarchar(50),@Contents nvarchar(max),@UserId int,@CreateTime datetimeasi ...

  4. Linux tar命令高级用法——备份数据

    Linux tar命令高级用法——备份数据 2015-12-31 Linux学习 Linux上有功能强大的tar命令,tar最初是为了制作磁带备份(tape archive)而设计的,它的作用是把文件 ...

  5. Linux下mv命令高级用法

    mv 也是 Linux 下一个使用频率非常高的命令,但除了一些基本用法,你还知道它的哪些高级用法呢? 1. 基本用法 移动一个/多个文件: 移动一个/多个目录: 重命名文件/目录. 这些都是很基本的用 ...

  6. Linux下 ls 命令的高级用法8例

    Linux下 ls 命令的高级用法8例 在Linux下,ls这个命令大家肯定太熟悉了,良许相信只要是Linux工程师,每天都会离不开这个命令,而且一天会使用个几百次.但是,除了 ls -l 以外,你还 ...

  7. #define命令的一些高级用法

    =========================================================== define中的三个特殊符号:#,##,#@ ================= ...

  8. Visual Studio 宏的高级用法

    因为自 Visual Studio 2012 开始,微软已经取消了对宏的支持,所以本篇文章所述内容只适用于 Visual Studio 2010 或更早期版本的 VS. 在上一篇中,我已经介绍了如何编 ...

  9. redis(二)高级用法

    redis(二)高级用法 事务 redis的事务是一组命令的集合.事务同命令一样都是redis的最小执行单元,一个事务中的命令要么执行要么都不执行. 首先需要multi命令来开始事务,用exec命令来 ...

随机推荐

  1. SpringBoot + MyBatis + MySQL 读写分离实战

    1. 引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做.因此,一般来讲,读写分离有两种实现方式.第一种是依靠 ...

  2. Docker可视化工具Portainer

    1 前言 从没想到Docker也有可视化的工具,因为它的命令还是非常清晰简单的.无聊搜了一下,原来已经有很多Docker可视化工具了.如DockerUI.Shipyard.Rancher.Portai ...

  3. MySQL 树形索引结构 B树 B+树

    MySQL 树形索引结构 B树 B+树   如何评估适合索引的数据结构 索引的本质是一种数据结构 内存只是临时存储,容量有限且容易丢失数据.因此我们需要将数据放在硬盘上. 在硬盘上进行查询时也就产生了 ...

  4. 《 ZooKeeper : Wait-free coordination for Internet-scale systems 》论文研读

    Zookeeper 研读 说明:本文为论文 < ZooKeeper : Wait-free coordination for Internet-scale systems > 的个人理解, ...

  5. 「状压DP」「暴力搜索」排列perm

    「状压DP」「暴力搜索」排列 题目描述: 题目描述 给一个数字串 s 和正整数 d, 统计 sss 有多少种不同的排列能被 d 整除(可以有前导 0).例如 123434 有 90 种排列能被 2 整 ...

  6. beautiful numbers树形dp or 数位dp

    题目找链接 题意: 如果数a能被a中的每一位数整除(0除掉),则称a是一个beautiful number,求一个区间内的beautiful numbers的个数. 分析: 首先,很显然,l到r的所有 ...

  7. Python-用xlrd模块读取excel,数字都是浮点型,日期格式是数字的解决办法

    excel文件内容: 读取excel: # coding=utf-8 import xlrd import sys reload(sys) sys.setdefaultencoding('utf-8' ...

  8. 记一次使用elasticsearch遇到bug的探索过程

    背景: 练习一个小项目,爬取京东的数据,存到ES库中,然后读取ES库中数据,展示到页面上.效果图如下: 涉及两个接口,一个爬取写入ES接口,一个查询展示接口,当我写完代码信心满满准备看看效果的时候,调 ...

  9. 华为云MVP熊保松谈物联网开发:华为云IoT是首选,小熊派是神器

    摘要:在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间,也得乘风破浪跟上新技术的节奏. 在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间 ...

  10. 数据可视化之powerBI技巧(二十一)简单三个步骤,轻松管理你的Power BI度量值

    最近碰到几个星友的问题,都是问我之前分享的源文件是如何把度量值分门别类放到不同的文件夹中的,就像这样, 其实在之前的文章中也曾提及过做法,这里再详细说一下制作步骤: 01 | 新建一个空表 点击菜单栏 ...