SpringBoot 是一个用来简化 Spring 应用初始搭建以及开发过程的框架,我们可以通过内置的 Tomcat 容器来轻松地运行我们的应用。但在生产环境中,我们可能需要将应用部署到独立的 Tomcat 服务器上。本文给大家介绍 SpringBoot 项目部署到独立 Tomcat 服务器的操作流程。
首先,需要将 Spring Boot 的打包方式从 jar
修改为 war
。打开 pom.xml 文件,找到 标签,将其内容改为 war。
war
排除 tomcat 依赖的方式有许多,我们可以采用以下简单的方式:直接变更 tomcat 的依赖范围为 provided
org.springframework.boot spring-boot-starter-tomcat provided
// SpringBoot 的启动类 @SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } } // 自定义 ServletInitializer public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(App.class); } }
web.xml
文件(或者使用 Servlet 3.0 注解)来获取应用程序的配置信息,并加载相应的 Servlet。对于 SpringBoot 应用程序来说,它也是一个 Servlet,需要被加载到 Servlet 容器中才能运行。@SpringBootApplication
注解标记,它告诉 SpringBoot 应用程序的入口点。在内嵌 Tomcat 的情况下, SpringBoot 会自动检测并启动应用程序,而在外部 Tomcat 中,我们需要告诉 Tomcat 如何加载 SpringBoot 应用程序。执行 mvn clean package
命令完成打包
mvn clean package