http://healthandbeauty.iteye.com/blog/1618501

在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不就是 mvn clean install 么?事实上比较好的集成命令会稍微复杂些,下面是一些总结:

  • 不要忘了clean: clean能够保证上一次构建的输出不会影响到本次构建。

  • 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用,这一点在前面已经详细论述。

  • 使用-U参数: 该参数能强制让Maven检查所有SNAPSHOT依赖更新,确保集成基于最新的状态,如果没有该参数,Maven默认以天为单位检查更新,而持续集成的频率应该比这高很多。

  • 使用-e参数:如果构建出现异常,该参数能让Maven打印完整的stack trace,以方便分析错误原因。

  • 使用-Dmaven.repo.local参数:如果持续集成服务器有很多任务,每个任务都会使用本地仓库,下载依赖至本地仓库,为了避免这种多线程使用本地仓库可能会引起的冲突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/这样的参数为每个任务分配本地仓库。

  • 使用-B参数:该参数表示让Maven使用批处理模式构建项目,能够避免一些需要人工参与交互而造成的挂起状态。

综上,持续集成服务器上的集成命令应该为 mvn clean deploy -B -e -U -Dmaven.repo.local=xxx 。此外,定期清理持续集成服务器的本地Maven仓库也是个很好的习惯,这样可以避免浪费磁盘资源,几乎所有的持续集成服务器软件都支持本地的脚本任务,你可以写一行简单的shell或bat脚本,然后配置以天为单位自动清理仓库。需要注意的是,这么做的前提是你有私有Maven仓库,否则每次都从Internet下载所有依赖会是一场噩梦。

转载于:https://www.cnblogs.com/wangcp-2014/p/6223042.html

maven正确的集成命令-U-B相关推荐

  1. Maven实战(四)——基于Maven的持续集成实践

    相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章<持续集成>,该文最早发布于2000年9月,之后在2006年进行了一次修订,它清晰地解释了持续集成的概念,并总结了 ...

  2. maven集成命令-U -B -P -e -X

    maven -U clean compile install -e -X -Dmaven.test.skip=true 在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不 ...

  3. Maven学习总结(44)——Maven构建时生命周期及其常用集成命令详解

    集成命令:-U -X -B -e clean能够保证上一次构建的输出不会影响到本次构建. 使用deploy而不是install: 构建的SNAPSHOT输出应当被自动部署到私有Maven仓库供他人使用 ...

  4. maven项目的构建命令

    在持续集成服务器上使用怎样的 mvn 命令集成项目,这个问题乍一看答案很显然,不就是 mvn clean install 么?事实上比较好的集成命令会稍微复杂些,下面是一些总结: 不要忘了clean: ...

  5. Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例

    Spring 4 MVC+Hibernate 4+MySQL+Maven使用注解集成实例 转自:通过注解的方式集成Spring 4 MVC+Hibernate 4+MySQL+Maven,开发项目样例 ...

  6. 将Maven与Ivy集成

    问题是:您在Ivy存储库中(只有那里)有一些资源,您想在基于Maven的项目中使用这些资源. 可能的解决方案: 由于Ivy可以轻松使用Maven风格的存储库(因此,您的Ivy客户端可以继续使用Ivy并 ...

  7. maven,spring,mybatis集成错误

    maven,spring,mybatis集成的时候单元测试junit测试没问题,但mvn jetty:run 就报错误 错误: org.apache.ibatis.binding.BindingExc ...

  8. Maven精选系列--常用命令详情

    转载自 Maven精选系列--常用命令详情 常用命令 mvn –version mvn -v 显示maven安装版本信息 mvn clean 清理项目打包文件,即项目下的target目录 mvn co ...

  9. maven基础--IDEA集成

    maven基础--IDEA集成 创建项目 构建项目 查找依赖 依赖范围 provided:已提供依赖范围.编译和测试有效,运行无效.如servlet-api,在项目运行时,tomcat等容器已经提供 ...

最新文章

  1. 本人在学习PHP过程中的随笔心得
  2. Android中AES256加密的实现
  3. 上所说的计算机主机是什么意思,通常所说的主机指什么
  4. 单点登录系统和CAS的简介
  5. 未付服务网关限流作用
  6. IOC操作Bean管理XML方式(注入外部bean)
  7. 学python就业到底如何_学习python后,就业如何?
  8. 作者:曹玉社(1990-),男,国防科学技术大学并行与分布处理重点实验室硕士生...
  9. resultAPI示例
  10. Java 正则表达式处理复杂文本,效率就是高!
  11. 手动方式配置IPsec隧道
  12. apache安装步骤(redhat)
  13. MySQL8.0.19解压安装教程
  14. manacher魔板
  15. jQuery动画代码详解
  16. ag-grid在Vue项目中的基本使用
  17. html没有注册类,电脑提示没有注册类别的解决方法大全
  18. git commit时的几种指令
  19. 版本 87.0.4280.66_iOS 14.2 Beta 2发布,修复闪退与优化改进
  20. python脚本自动发送邮件和叮叮机器人发送群消息

热门文章

  1. 如何把两个查询语句合成一条 语句
  2. 表驱动法——直接访问表示例1
  3. PHP常用的正则表达式(有些需要调整)
  4. Java基础---网络编程
  5. video from html5
  6. 利用JMeter进行压力测试(1)(转)
  7. html5结合css3,html5八大技术特征,与CSS3完美结合
  8. java项目皮肤包_java swing项目皮肤包+使用方法说明
  9. 小程序提供几种结算周期? T+1是什么意思?
  10. 友善之臂编linux内核,友善之臂NanoPC-T3 Plus,s5p6818编译Linux内核流程