不加版本号,默认下载最新的版本
pom.xml 文件用于 maven 构建,指定了如何编译和打包项目
<!-- xml 文档申明 版本和编码方式 -->
<?xml version="1.0" encoding="UTF-8"?>
<!--
xmlns:xml的命名空间,避免元素命名冲突
一般设置为默认命名空间:http://maven.apache.org/POM/4.0.0,
-->
<!--
xmlns:xsi 自定义了一个 xsi的前缀命名空间
其代表的命名空间URI为:http://www.w3.org/2001/XMLSchema-instance,
定义该命名空间主要是为了更方便的使用其所代表的命名空间中的schemaLocation属性。
使用xsi作为namespace-prefix,并不是硬性规定,只是一种通用的选择,也可以改成别的命名;
-->
<!--
xsi:schemaLocation 对应xsi的属性
xsi:schemaLocation="namespaceURI1 schemaURI1 namespaceURI2 schemaURI2 ..."。
-->
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!-- pom模型版本,maven2和3只能为4.0.0-->
<modelVersion>4.0.0</modelVersion>
<!--
项目打包方式
pom, jar, ejb, maven-plugin, war, ear, rar, par
这里用 jar yml 配置文件才生效 pom 不生效
-->
<packaging>jar</packaging>
<!--父级项目,确定依赖和版本-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.2</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--
项目组的ID 用于maven定位
表明该项目所属的组织或公司,命名规则通常为组织或公司域名反转,然后再加项目名称
-->
<groupId>com.hew</groupId>
<!--
项目id 通常是项目名称 唯一标识符
有时候和项目名保持一致,有时候是项目名 + 模块名,该id是唯一的,
一个goupId下面可能会有多个artifactId,就是通过artifactId区分
-->
<artifactId>java-wab</artifactId>
<!-- 项目版本 SHAPSHOT意为快照,说明该项目还处于开发中 -->
<version>0.0.1-SNAPSHOT</version>
<!-- 声明了一个对于用户更加友好的项目名称,非必须项,一般用于Maven生成的文档 -->
<name>java-wab</name>
<!-- 项目信息描述 -->
<description>learning project for Spring Boot</description>
<properties>
<java.version>18</java.version>
</properties>
<dependencies>
<!--web依赖包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<!--此依赖帮助访问 template 中的文件 -->
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<!--
如果报错 Dependency 'org.springframework.boot:spring-boot-starter-thymeleaf:2.7.2' not found 就更新一下 maven
-->
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<!--
scope 表示依赖作用范围
compile:为默认 在编译、运行、测试时均有效
provided:在编译、测试时有效,但是在运行时无效
runtime:在运行、测试时有效,但是在编译代码时无效
test:只在测试时有效,例如:JUnit
system:在编译、测试时有效,但是在运行时无效
-->
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
<build>
<!--插件-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!--
如果报错 Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found
填入 version 版本值要和 parent 的version一致
-->
<version>2.7.2</version>
</plugin>
</plugins>
</build>
</project>