Tomcat部署SpringBoot项目

1.修改打包方式

pom.xml 里 加上

xml 复制代码
 <packaging>war</packaging>

2.移除内嵌的Tomcat

xml 复制代码
	<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
      <scope>provided</scope>
    </dependency>

3.修改启动类

需要修改SpringBoot项目的启动类,在使用SpringBoot直接启动的时候,启动类的代码如下:

java 复制代码
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
	
}

而现在如果我们想要部署到外部tomcat上面,就需要修改一下这个启动类,修改后的启动类如下:

java 复制代码
public class DemoApplication extends SpringBootServletInitializer {

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
		return application.sources(DemoApplication.class);
	}

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

}

4.将该项目打包成war

IDEA打包项目:点击Build->Build Artifacts-,然后进行build即可,生成的war包会放到对应的项目根目录下的target目录下面

5.将war文件放到Tomcat/webapps目录下即可

相关推荐
却话巴山夜雨时i几秒前
互联网大厂Java面试:从Spring Boot到Kafka的业务场景深度剖析
spring boot·redis·spring cloud·微服务·kafka·prometheus·java面试
艾莉丝努力练剑8 分钟前
【Linux线程】Linux系统多线程(六):<线程同步与互斥>线程同步(上)
java·linux·运维·服务器·c++·学习·线程
好家伙VCC9 分钟前
# BERT在中文文本分类中的实战优化:从基础模型到高效部署BERT(Bi
java·人工智能·python·分类·bert
身如柳絮随风扬11 分钟前
什么是缓存预热
java·spring·缓存
Gofarlic_OMS16 分钟前
中小企业控制方法:中小型制造企业Creo许可证成本控制
java·大数据·运维·算法·matlab·制造
XiYang-DING17 分钟前
【Java】Lambda表达式
java·开发语言·python
隔山打牛牛23 分钟前
Spring的两大核心
java·开发语言
Elastic 中国社区官方博客24 分钟前
用于 IntelliJ IDEA 的新 ES|QL 插件
java·大数据·数据库·ide·elasticsearch·搜索引擎·intellij-idea
API快乐传递者26 分钟前
Python 爬虫获取 1688 商品详情 API 接口实战指南
java·前端·python
MX_935929 分钟前
Spring MVC全注解开发实现及其原理
java·spring·mvc