maven多模块项目jar包依赖版本统一管理最佳实践
maven多模块项目jar包依赖版本统一管理最佳实践1. 问题描述2. 解决方案2.1 父 pom配置2.2 模块中pom文件配置3. 总结1. 问题描述现有一个基于Java8构建的供应链管理springboot项目项目的目录结构如下scm-parent父工程scm-web模块scm-service模块scm-domain模块实现maven jar包依赖的统一版本管理。2. 解决方案1version 只允许出现在一个地方父 pom 的 2子模块 dependency里不准写 除非是本级模块互相引用2.1 父 pom配置pom.xml文件只是一个示例大家重点关注dependencyManagement, properties中定义的版本号变量即可。?xml version1.0 encodingUTF-8?projectxmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionnamescm-parent/namegroupIdcom.xx/groupIdartifactIdscm-parent/artifactIdversion0.0.1/versionpackagingpom/packagingpropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingproject.scm.version0.0.1/project.scm.versionserverframe.version1.0.1-SNAPSHOT/serverframe.version!-- 第三方依赖版本 --lombok.version1.18.22/lombok.versionmybatis.version3.5.19/mybatis.versionmybatis-plus.version3.5.12/mybatis-plus.versionmybatis-plus-generator.version3.5.0/mybatis-plus-generator.versiondocx4j.version3.2.1/docx4j.versionshiro.version1.7.1/shiro.version.../propertiesmodulesmodulescm-domain/modulemodulescm-service/modulemodulescm-web/module/modulesdependenciesdependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependencydependencygroupId.../groupIdartifactId.../artifactId/dependency/dependenciesdependencyManagementdependenciesdependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion${lombok.version}/version/dependencydependencygroupIdorg.apache.shiro/groupIdartifactIdshiro-spring/artifactIdversion${shiro.version}/version/dependency/dependencies/dependencyManagement/project2.2 模块中pom文件配置模块中pom文件只定位maven坐标不能带版本号?xml version1.0 encodingUTF-8?projectxmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionnamescm-service/nameartifactIdscm-service/artifactIdversion${project.scm.version}/versionpackagingjar/packagingparentgroupIdcom.lehui.lhscm/groupIdartifactIdscm-parent/artifactIdversion0.0.1/version/parentdependencies!-- word模板引擎 --dependencygroupIdorg.freemarker/groupIdartifactIdfreemarker/artifactId/dependencydependencygroupId.../groupIdartifactId.../artifactId/dependency/dependencies/project3. 总结dependencyManagement 本身不引入依赖只是版本声明dependencyManagement只有子模块声明了对应的maven坐标才引入指定版本的maven依赖不声明不引入。

相关新闻

EKF与自适应博弈在航天追逃策略中的应用

EKF与自适应博弈在航天追逃策略中的应用

1. 项目背景与核心价值在航天器末端追逃博弈场景中,信息的不完全性一直是制约策略有效性的关键瓶颈。传统博弈论中的纳什均衡建立在完全信息假设基础上,而实际工程中我们往往只能获取对手的部分状态信息。这篇复现论文的创新点在于将EKF(扩展…

2026/7/27 8:34:59 阅读更多 →
AD-Copilot:工业异常检测新范式与多模态技术实践

AD-Copilot:工业异常检测新范式与多模态技术实践

1. 工业异常检测的痛点与AD-Copilot的突破 工业生产线上的质检环节,往往需要工人用肉眼比对产品与标准模板的差异。这种工作看似简单,实则暗藏挑战:微小划痕的识别需要将图片放大到像素级比对,色差检测要求在不同光照条件下保持判…

2026/7/27 8:34:59 阅读更多 →
人工智能训练师拿证后必做的5件事|3天更新简历+90天申领补贴+1周加入社群

人工智能训练师拿证后必做的5件事|3天更新简历+90天申领补贴+1周加入社群

摘要:人工智能训练师拿证后必做的5件事:3天内更新简历突出AI技能、90天内申领技能补贴3120元、1周内加入AI行业社群、1个月内申请积分落户加分、3个月内开始个税抵扣申报。错过任一项就亏钱。 一、为什么拿证不是终点 考证的真正价值在于「把证书用起来」:┌───────…

2026/7/27 8:34:59 阅读更多 →

最新新闻

MindSpore全场景AI开发实战与性能优化指南

MindSpore全场景AI开发实战与性能优化指南

1. MindSpore全场景AI开发实战概述作为华为开源的深度学习框架,MindSpore凭借"全场景"设计理念正在AI工程领域快速崛起。我在实际工业级AI项目中使用MindSpore近两年,发现其三大核心优势:首先,昇腾芯片原生支持带来训练…

2026/7/27 8:50:07 阅读更多 →
Control Barrier Function for Aligning Large Language Models

Control Barrier Function for Aligning Large Language Models

文章总结与翻译 一、主要内容 本文提出一种基于控制理论的大型语言模型(LLM)对齐框架CBF-LLM,核心是引入控制障碍函数(CBF)构建安全过滤器,确保模型生成符合用户期望(如积极正向)的文本。 核心背景与类比 LLM虽具备强大的语言理解、推理和写作能力,但可能生成有害…

2026/7/27 8:50:07 阅读更多 →
引导滤波算法原理与实现:保边去噪技术详解

引导滤波算法原理与实现:保边去噪技术详解

1. 引导滤波算法概述在数字图像处理领域,保边去噪一直是个经典难题。传统的高斯滤波、均值滤波等方法在平滑噪声的同时,往往会模糊图像边缘和纹理细节。2013年由何恺明等人提出的引导滤波(Guided Filter)算法,通过引入引导图像的概念&#xf…

2026/7/27 8:50:07 阅读更多 →
LabVIEW多项式分析与根分布可视化实战

LabVIEW多项式分析与根分布可视化实战

1. 项目背景与核心价值 在工程计算和科学实验中,多项式分析是一个基础但极其重要的数学工具。从控制系统设计到信号处理,多项式方程的求解往往决定了系统的稳定性和性能表现。传统上,工程师们通常依赖MATLAB等数学软件进行这类分析&#xff0…

2026/7/27 8:50:07 阅读更多 →
ABAP开发:ENUM类型如何替代常量接口提升代码质量

ABAP开发:ENUM类型如何替代常量接口提升代码质量

1. 为什么ABAP开发者需要关注ENUM替代常量接口在ABAP开发领域,常量接口(Constant Interface)长期以来被用作管理相关常量的标准方式。典型的常量接口会包含数十甚至上百个常量定义,这些常量通常用于表示业务状态、类型代码或各种标…

2026/7/27 8:50:07 阅读更多 →
晚风棱镜数字权益深耕虚拟商品赛道

晚风棱镜数字权益深耕虚拟商品赛道

数字生活全面渗透当下,影音会员、游戏点券、生活卡券、数字素材、软件授权等虚拟商品,早已成为大众日常消费、企业营销运营的刚需。传统综合电商虚拟品类分散、货源杂乱、交易安全缺乏保障,垂直数字权益交易市场长期存在效率、合规、售后多重…

2026/7/27 8:49:07 阅读更多 →

日新闻

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:54 阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/27 6:31:56 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/27 4:01:12 阅读更多 →

月新闻