up:: Maven MOC tag::坐标 dates:: 2023-09-08
maven 的坐标,每个依赖包都有一个唯一的坐标,像地图一样用经纬度可以对应唯一的点。
maven 的坐标包含以下信息:
- groupId:命名通常为域名反向一一对应。比如
google.com
可以命名为com.google
。 - artifactId:命名推荐的做法是使用实际的项目名称作为 artifactId 的前缀。比如项目名是
demo
,下面有个hello
模块,就可以命名为demo-hello
。 - version:定义当前项目的版本信息。
- packaging:定义元素打包方式,打包方式通常与所生成的构件文件扩展名对应。例如指定为
jar
则构件的文件扩展名为 .jar,war 也如此。不定义 packaging 时,默认打包为 jar。打包方式会影响到构建的生命周期,比如 jar 和 war 打包会使用不同的命令。 - classifier:定义构建输出的一些附属构建。例如项目打包生成 demo.jar 文件,打包过程中可能还需要 javadoc 文件,就可以配置对应的插件来生成 javadoc 文件。
通常定义一个外部依赖,只需要 groupId
、artifactId
、version
。例如,项目中需要引用一个 guava 的依赖包,添加的依赖坐标如下: