当前位置: 首页 > news >正文

Maven工具学习使用(三)——坐标和依赖

坐标元素

Maven坐标是通过一些元素定义的,元素包括groupId、artifactId、version、packaging、classifier

groupId:定义当前Maven项目隶属的实际项目。Maven项目和实际项目不是一对一的关系。一个实际的项目对应的Maven模块可能会有很多,比如SpringFramework。groupId不应该对应项目隶属的组织或公司。groupId的一部分可以是公司或组织的关键字

artifactId:定义一个实际项目的一个Maven项目(模块)

version:Maven项目当前所处的版本,Maven定义了一套完整的版本规范以及快照的概念。

packaging:定义Maven项目的打包方式。打包方式通常与所生成构件的文件扩展名对应,比如常见的jar,最终生成的文件名为${artifactId}.${version}.jar.;使用war方式会生成一个.war文件。当不定义packaging的时候,Maven会使用默认值jar.

classifier:用来帮助定义构建输出的一些附属构件。附属构件与主构件对应,该属性不能直接定义,由附加的插件帮助生成,例如 *-javadoc.jar和*-sources.jar

依赖配置

dependencies可以包含一个或者多个dependency元素,以生命一个或者多个项目依赖,每个依赖包含的元素如下:

<dependencies>
    <dependency>
        <groupId>...</groupId>
        <artifactId>...</artifactId>
        <version>...</version>
        <type>...</type>  <!-- 对应与项目坐标定义的packaging,大部分情况下该元素不必声明,其默认值为jar。 -->
        <scope>...</scope> <!-- 依赖范围 -->
        <optional>...</optional> <!-- 标记依赖的范围是否可选 -->
        <exclusions>

相关文章:

  • 基于Python的自然语言处理系列(60):使用 LangChain 构建 Multi-Vector Retriever 进行文档检索
  • Redis部署详细步骤
  • 数字电子技术基础(三十三)——编码器
  • 数据库练习
  • 使用ZMQ和protobuf实现C++程序与Python程序的通信
  • 多行为推荐综述
  • 混境之地1
  • 批量删除 PDF 中的所有图片、所有二维码图片以及指定的某张图片
  • CCF CSP 第33次(2024.03)(2_相似度计算_C++)(字符串中字母大小写转换+哈希集合)
  • Mysql的单表查询和多表查询
  • Cookie、sessionStorage、localStorage
  • vue3(笔记)5.0--pinia工具的知识扩展
  • 系统工程-信息系统的分类
  • How to use pgbench to test performance for PostgreSQL?
  • 【C++】String类的模拟实现
  • [Qt5] QMetaObject::invokeMethod使用
  • Netty源码—7.ByteBuf原理三
  • 蓝桥云客-染色时间
  • 1424.对角线遍历
  • 322 零钱兑换
  • 巴基斯坦称对印精准打击造成设施损坏和人员伤亡
  • 长期对组织隐瞒真实年龄,广元市城发集团原董事韩治成被双开
  • 四川资阳市原市长王善平被双开,“笃信风水,大搞迷信活动”
  • 人民财评:网售“婴儿高跟鞋”?不能让畸形审美侵蚀孩子身心
  • 美联储主席:美联储工作方式不会受特朗普影响,从未寻求与总统会面
  • 明查|这是“C919迫降在农田”?实为飞机模型将用于科普体验