POM

Project Object Model 的缩写,语义化就是项目对象模型 ,主要在工程中的体现就是pom.xml文件。pom文件为Maven与工程之间沟通的一个桥梁。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>com.test.maven</groupId>
  6. <artifactId>maven-demo</artifactId>
  7. <version>1.0.0-SNAPSHOT</version>
  8. <name>maven-demo</name>
  9. <description>Demo project</description>
  10. </project>

Maven坐标

坐标(Coordinate),这个概念应该来自于数学中的坐标。在一个平面坐标系中,有x轴和y轴,x轴就是横线,y轴就是竖线,坐标(x,y)表示这个点距离x轴为y,距离y轴为x的一点,任何一个坐标都能唯一标识该平面中的一点。

Maven便制定了一套规则,那就是使用GAV坐标进行唯一标识。

groupId:公司或组织 artifactId:模块名称 version:版本

语义化版本规范

主版本号.次版本号.修正版本号(1.0.0 )

主版本号:整体架构的变动 次版本号:新增加一个功能 修正版本:BUG版本修复

发行版和快照版

快照版

1.0.0-SNAPSHOT
快照版可以多次发布每次发布后 1.0.0-时间戳 ,开发中B项目依赖于A,A每次的调整都推送快照版本,B只需要刷新依赖即可依赖A的最新的版本,不需要每次都变更版本号。

发行版

1.0.0-RELEASE
发行版只能存在一个版本,一旦发布,即不会变化。