maven正确的集成命令总结

11 篇文章 0 订阅

mvn -U -B -P -e -X

  • 不要忘了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使用批处理模式构建项目,能够避免一些需要人工参与交互而造成的挂起状态。

  • -T
    –T1: 线程数,可以并行地构建那些相互间没有依赖关系的模块,充分利用多核CPU资源。
    -T2 使用 2个线程
    -T5 使用 5个线程
    -T 1C
    代表每个CPU核心跑一个工程。
    -Dmaven.test.skip=true
    跳过整个单元测试。
    默认情况下,在构建项目时,Maven将自动运行整个单元测试。 如果任何单元测试失败,它将迫使Maven中止构建过程。 在现实生活中,即使某些案例失败,您可能仍然需要构建项目。
    -Dmaven.compile.fork=true
    1.默认情况下 ,fork 是 false,Maven 使用 运行自己的 jdk (maven 是需要依赖 jdk 存在的) 来进行 compiler , 如果不想使用这个默认的 jvm,就可以通过 fork 来实现。fork 需要消耗更多的资源,以及花费更多的时间进行编译,所以如果开发机器性能不高,也应该 尽量避免 使用这种方式。
    2.-Dmaven.compile.fork=true 使用多线程编译

    -pl
    在指定模块上执行命令
    -am
    表示同时处理选定模块所依赖的模块
     

举例这种报错可能就是依赖问题  需要-U

.java:[64,47] 无法将接口 
com.xizhao.feign.api.admin.FeignAdminService中的方法 pageXizhaoOperateLog应用到给定类型;
[ERROR] 需要: java.lang.Long,java.lang.String
[ERROR] 找到: com.xizhao.feign.dto.XizhaoOperateLogDTO
[ERROR] 原因: 实际参数列表和形式参数列表长度不同
[ERROR] -> [Help 1]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值