springboot 在tomcat中启动两次

Posted 我是属车的

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot 在tomcat中启动两次相关的知识,希望对你有一定的参考价值。

我开始以为眼花了,tomcat启动的时候,

  .   ____          _            __ _ _
 /\\\\ / ___\'_ __ _ _(_)_ __  __ _ \\ \\ \\ \\
( ( )\\___ | \'_ | \'_| | \'_ \\/ _` | \\ \\ \\ \\
 \\\\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  \'  |____| .__|_| |_|_| |_\\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.0.2.RELEASE)

出现了两次,然后日志中有报错:

 Unable to register MBean [HikariDataSource (HikariPool-2)] with key \'dataSource ...

最终确认springboot被加载了两次。

原因一:

war包发布,可能没有排除内置tomcat,先确认exclusions

 

原因二:

tomcat的server.xml配置有问题

如果<Context>节点里配置了应用全路径,那么<host>节点里的appBase要置空,否则就是这出问题,host和context分别加载一次。

 

待测: 如果有两个springboot应用放在tomcat下的情况,还未测试。

以上是关于springboot 在tomcat中启动两次的主要内容,如果未能解决你的问题,请参考以下文章

spring中定时器每周执行两次

SpringBoot

Springboot生成war部署到Tomcat

Springboot生成war部署到Tomcat

tomcat 项目启动两次的的解决

Tomcat启动时项目重复加载,导致资源初始化两次!