Spring Boot 项目 Maven 配置

时间:2023-03-08 20:17:11
Spring Boot 项目 Maven 配置

在配置基于Maven的Spring Boot项目的过程中,打包运行出现了一系列错误。

比如: mvn 中没有主清单属性、java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplicatio等等

其原因主要在于

1.需要使用 spring-boot-maven-plugin 组件进行打包;

2.选定 spring-boot-starter-parent 依赖 Spring Boot 版本后,其余插件尽量不要手动指定版本号,以免造成兼容性问题;

3.如果Maven打包发现指定的依赖和运行的Java版本不对应,应手动在配置文件中指定Java版本;

4.尽量将主类放到<groupId>org.htsg</groupId>加<artifactId>test01</artifactId>组成的路径下:org.htsg.test01.App.java

综上,我们的一个可以正确使用Maven进行打包的简单pom.xml文件如下:

 <?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>org.htsg</groupId>
<artifactId>test01</artifactId>
<version>1.0-SNAPSHOT</version>
<!--添加spring-boot-starter-parent作为父级依赖-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.9.RELEASE</version>
</parent> <dependencies>
<dependency>
<!--添加spring-boot-starter-web作为Web项目依赖-->
<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>
</project>

其中包含了Web项目的基础配置不是必须的。