一:在pom.xml中添加packaging标签
<packaging>war</packaging>
二:在pom.xml中添加maven插件(把打jar包的插件注释掉)
去掉springboot的内置服务器用提供的
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <version>2.5.4</version> <scope>provided</scope> </dependency>
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <!--没有web.xml则需要设置为false--> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin>
三:添加class继承SpringBootServletInitializer重写configure方法(builder.sources(XX.class))XX.class 是添加@SpringBootApplication的类,即main方法启动类
public class TomcatStart extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(RunApplication.class); } }
四:打开idea的maven 1.clean2install,打的war包在target下
五:将war包放在tomcat-->webapps下运行即可,结果
注意:用tomcat启动,则是tomcat的端口不在用配置文件里设置的端口