在同一个Tomcat下配置多个springboot项目分为4步
第一步:将启动类修改继承SpringBootServletInitializer 类,重写configure方法,否则在部署到tomcat时,接口将访问不到
@SpringBootApplication
@EnableConfigurationProperties({MasterConfig.class, GzmTemConfig.class})
@EnableCaching
public class App extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
//重写configure方法,否则在部署到tomcat时,接口将访问不到
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(App.class); }
}
pom.xml 文件 Tomcat依赖也需要改动,否则不能不正常部署
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
第二步:将第二个,第三个项目....添加配置,注意不是第一个项目
spring
jmx:
enabled: false
第三步:配置Tomcat的server.xml文件,有几个项目就配置几个host节点,同时也要配置相关的Context节点,注意端口不要重复,appBase这里就不需要在写webapps了 因为在Context节点的docBase属性里写了
第四步:启动Tomcat,访问地址,不需要携带项目名称
访问:http://localhost:8080
http:// localhost:8081
至此大功告成!鼓掌