maven

学习来源:《maven实战》

1.简介

先来打开百度翻译,看看maven是什么意思?

跟我读:mei~wen,不是ma~wen,也不是man~wen
作用:Java项目构建、依赖管理、项目信息管理
优点:跨平台、自动化构建、坐标系统依赖管理、提供中央仓库、制定标准(目录结构等约定优于配置)

2. 坐标和依赖

maven的安装与配置在这里直接略过,百度一抓一大把~

坐标

maven定义一组规则,世界上任何一个构件都可以使用maven坐标来标识,maven坐标包含groupId、artifactId、version、packaging、classifier;只要我们提供正确的坐标,maven就能在他的中央仓库找到对应的构件。

  • groupId:定义当前web项目隶属的实际项目,因为maven项目和实际项目不一定是一一对应的。
  • artifactId:定义实际项目中的一个模块。比如:springFramework有beans、aop、data-jpa等模块。
  • version:定义当前项目的版本。
  • packaging:定义maven工程的打包方式。打包方式通常与所生成的构建的文件扩展名对用,如jar、war等,如果不配置该元素,maven默认使用jar;打包方式的不同会影响构建的生命周期。
  • classifier:帮助定义构建输出一些附属组件,如*-Javadoc.jar(Java文档)、sources.jar(源码)。不能直接定义,因为附属构件不是项目默认生成的,而是由附加的插件帮助生成的。

依赖

  • groupId、artifactId、version:以来的基本坐标,必须声明。
  • type:依赖类型,对应项目的packaging,大多数情况下不用配置,默认是jar。
  • scope:依赖的范围。
  • optional:标记依赖是否可选。
  • exclusion:用来排除传递性依赖。
原文地址:https://www.cnblogs.com/rogersma/p/13375329.html