Spring Boot如何将一个WAR文件部署到Tomcat呢?
下文笔者讲述将SpringBoot中的WAR包文件部署到Tomcat容器中的方法分享,如下所示
需设置Spring Boot启动的主类
pom.xml
SpringBoot部署WAR包到Tomcat容器的步骤
实现步骤: 1.扩展SpringBootServletInitializer 2.将嵌入式servlet容器标记为已提供。 3.修改pom.xml为war包模式
扩展SpringBootServletInitializer
普通SpringBoot配置代码StartWebApplication.java
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class StartWebApplication { public static void main(String[] args) throws Exception { SpringApplication.run(StartWebApplication.class, args); } }
用于WAR部署
StartWebApplication.javaimport org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class StartWebApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(StartWebApplication.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(StartWebApplication.class); } } /*@SpringBootApplication public class StartWebApplication { public static void main(String[] args) throws Exception { SpringApplication.run(StartWebApplication.class, args); } }*/由于存在多个主类
需设置Spring Boot启动的主类
pom.xml
<properties> <!-- The main class to start by executing java -jar --> <start-class>com.java265.SpringBootWebApplication</start-class> </properties>
嵌入式servlet容器标记为已提供
pom.xml<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!-- marked the embedded servlet container as provided --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> </dependencies>pom.xml
<packaging>war</packaging> 完成,构建项目并复制WAR文件以进行部署
采用以上步骤后 可以将打包生成的war包 放入到tomcat中直接部署运行
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。