SpringBootPom文件解析

167 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路 Pom文件解析

<project xmlns="maven.apache.org/POM/4.0.0" 命名空间 xmlns:xsi="www.w3.org/2001/XMLSch…" xml遵循的标签规范 xsi:schemaLocation="maven.apache.org/POM/4.0.0 maven.apache.org/xsd/maven-4…" 用来定义xmlschema的地址,也就是xml书写时需要遵循的语法,两部分组成,前面部分就是命名空间的名字,后面是xsd(xmlschema)的地址

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <version>2.1.1.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<!--Group:组织ID,一般分为两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等,其中org为非营利组织,com为商业组织;-->
<!--Artifact:唯一标识符,一般是项目名称;-->
<!--Description:项目描述。-->
<groupId>cn.van</groupId>
<artifactId>springboot-demo</artifactId>
<version>1.0-SNAPSHOT</version>
<description>第一个SpringBoot项目示例</description>
<dependencies>
    <!-- 测试包,当我们使用 mvn package 的时候该包并不会被打入,因为它的生命周期只在 test 之内-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <!-- web 包,默认就内嵌了Tomcat 容器-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

</dependencies>

<build>
    <plugins>
        <!-- 编译插件 -->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

和 它们是什么:

    groupId:存储的包的路径,一般分为多段,第一段为域,第二段为公司名。。。。。。如图,org是域中的一个,和它类似的           还有com、cn等,org为非盈利组织,com为商业组织。

    artifactId:模块名

它们统称为坐标,是为了保证项目的唯一性提出的,如果把自己的项目弄到maven本地仓库去,必须通过groupId+artifactId去查找。

与它们同级的还有,它是用来声明版本号的。在父pom中通常将一些通用的组件的版本号抽取出来,统一做版本号管理,当再次用到这个组件时就不用再去声明版本号了,上图的版本号就被抽取了出去;这样做还可以避免因为组件版本不一致带来的冲突问题。