Spring-Boot 提供内置的 Tomcat 直接打包为 Jar 格式后运行 @SpringBootApplication
Application
下的 main 方法即可,但是本人更喜欢使用 Tomcat 来运行应用,Spring-Boot 同样提供了方法。
1. 将Application
继承SpringBootServletInitializer
并重写configure
方法
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
2. 检查pom.xml
文件
- 打包方式为 war
<packaging>war</packaging>
-
打包时排除 Tomcat 组件
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
3.打包成 War 包并放入 Tomcat 中运行
以上配置更改后即可在 Tomcat 中运行,其 application.yml
配置文件中的端口与应用名在 Tomcat 中失效
server:
port: 8080
context-path: /test
遵循 Tomcat 的配置原则,端口号在 Tomcat 的 conf\server.xml
文件中配置,应用名根据 war 包的名称,需要注意 Spring-Boot 的 JDK 版本,放在与之兼容的 Tomcat 版本中运行。
发表评论
沙发空缺中,还不快抢~