在Spring Boot项目开发中,尤其当项目结构复杂时,可能存在多个启动类的情况。本文将详细讲解如何打包包含多个启动类的Spring Boot项目,并指定运行时启动的特定类。
问题:一个Spring Boot项目包含两个或多个启动类,如何确保仅启动指定的启动类?
解决方案:
利用Spring Boot Maven插件spring-boot-maven-plugin
,我们可以轻松解决此问题。该插件的mainClass
属性允许指定打包后JAR文件的入口类。
在项目的pom.xml
文件中,找到spring-boot-maven-plugin
插件配置,并添加mainClass
属性,其值为目标启动类的全限定名。例如,假设项目中有两个启动类:com.example.App1
和com.example.App2
,要启动com.example.App2
,则pom.xml
配置如下:
org.springframework.boot spring-boot-maven-plugin com.example.App2
执行mvn clean package
命令打包后,生成的JAR文件将以com.example.App2
作为入口类启动。 请确保com.example.App2
包含@SpringBootApplication
注解,并正确配置了Spring Boot所需的依赖。 通过修改mainClass
属性值,即可切换启动不同的类。 每次修改mainClass
后都需要重新打包。