开发者社区> 问答> 正文

如何确保maven各个模块用同一个版本

问题

  • 尝试 所有的主子模块的版本,用同一个父pom中定义的 properties 例如,<cap.version>1.4.25-SNAPSHOT</cap.version>

  • 结果 本地打包没问题 服务端打包报错

[ERROR] Failed to execute goal on project cap-client: Could not resolve dependencies for project com.taobao.capacity:cap-client:jar:1.4.25-SNAPSHOT: Failed to collect dependencies at com.taobao.capacity:cap-common:jar:1.4.25-SNAPSHOT: Failed to read artifact descriptor for com.taobao.capacity:cap-common:jar:1.4.25-SNAPSHOT: Could not find artifact com.taobao.capacity:cap-parent:pom:${cap.version} in tbmirror-all (http://mvnrepo.alibaba-inc.com/mvn/repository) -> [Help 1]

展开
收起
君浩 2020-03-31 00:12:45 1200 0
1 条回答
写回答
取消 提交回答
  • 开发

    解决

    • 主pom:
      • 主模块的版本自定义
      • 各个子模块版本:在<dependencyManager>中定义所有子module版本为${project.version}
    • 子pom:
      • 父module的版本用 mvn -N versions:update-child-modules -DgenerateBackupPoms=false更新
      • 当前module的版本留空,缺省和父module是一致的
      • 依赖的其他子module版本留空,依赖父pom中配置
    2020-03-31 00:13:04
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载