Maven:是一站式的项目管理工具,负责项目的构建,打包,测试以及发布等工作
maven项目的标识
maven的坐标=组ID/项目名称/版本号
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
maven中的jar包文件具有依赖的传递性
A.jar–>B.jar–>C.jar A包依赖B包,B包依赖C包,则导入A包的时候会自动导入B包和C包
"parent"标签:定义了springboot所有依赖jar包的版本信息,由官网解决了jar包冲突性问题
本地仓库中没有该文件的jar包,parent表示是一个聚合工程
1.先clean清空target目录,然后compile重新编译,最后install打包
2.跳过测试类打包
<properties>
<java.version>1.8</java.version>
<!--跳过测试类打包-->
<skipTests>true</skipTests>
</properties>
3.spring-boot-starter:springboot的启动项
开箱即用:只需要导入jar包简单的配置即可实现对应的功能
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
4.build标签:负责项目的打包/部署操作
项目执行命令: java -jar xxx.jar(注意空格)
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
元注解:修饰注解的注解
@Target(ElementType.TYPE): 标识注解对谁有效,此处是对类有效
@Retention(RetentionPolicy.RUNTIME): 标识注解有效期,此处是运行时有效(一般都写RUNTIME)
@Documented: 动态生成文档文件
@Inherited: 是否允许继承