maven中properties和dependencys标签的区别

在Maven的pom.xml中,<properties>用于定义可重用的变量(如版本号),而<dependency>用于声明项目实际依赖的外部库;两者通过 $ {}语法关联,<properties>中的变量可在<dependency>中引用以实现统一管理。

<properties> 的作用

  • 定义项目中可重用的变量(属性),如依赖版本号、编码格式等
  • 类似于Java中定义变量,可在POM文件其他位置通过 $ {propertyName}引用
  • 示例:定义JUnit版本变量 <junit.version>5.7.2</junit.version>12

<dependency> 的作用

  • 直接声明项目实际需要的依赖库,包含groupId、artifactId、version等坐标信息
  • 用于导入外部依赖库,使项目能够正确编译和运行
  • 示例:引用properties中定义的版本 <version> $ {junit.version}</version>

详细示例:

XML 复制代码
<properties>
    <junit.version>5.7.2</junit.version>
    <log4j.version>2.15.0</log4j.version>
</properties>

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version> $ {junit.version}</version>
        <scope>test</scope>
    </dependency>
</dependencies>
相关推荐
钱六两16 分钟前
#3、SpringAI 接入deepSeek大模型(喂饭版)
java·spring boot·ai编程
瑞瑞小同学1 小时前
处理echarts x轴内容过多,重叠问题
前端·javascript·echarts
HexCIer1 小时前
面向未来的原子化 CSS:UnoCSS 核心架构分析与 Tailwind CSS 现状
前端·css·vite
程序员黑豆1 小时前
鸿蒙应用开发中的单位详解:px、vp、fp、lpx
前端·harmonyos
null_171 小时前
IntelliJ IDEA 极致流畅配置方案:Ultra 9 285K + 64GB 内存实测
java·ide·intellij-idea
Herbert_hwt2 小时前
建立Java程序开发
java·开发语言
好好沉淀2 小时前
@ExcelIgnoreUnannotated 和 @AutoMapper 详解
java
像我这样帅的人丶你还2 小时前
MCP + npm:给五年前的老系统接上AI
前端·javascript·agent
南一Nanyi2 小时前
依赖注入和控制反转
前端·设计模式·nestjs
小村儿2 小时前
连载14-实战篇--一个半月,我一个人和 Claude Code 搭出一套数字人工程
前端·后端·ai编程