Springboot修改內嵌Tomcat版本

最近Tomcat爆出高危漏洞,基本影響全部的Tomcat版本,故須要對springboot項目進行版本升級
ps:通常不建議修改springboot內嵌版本,內嵌版本都是通過驗證比較穩定的版本java

一、查詢springboot內嵌的版本

使用idea等工具能夠直接經過pom文件查看下面parent裏面的Tomcat版本git

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.12.RELEASE</version>
    <type>pom</type>
</dependency>

也能夠經過mvnrepository,查詢上面依賴,找到對應的版本點進去,往下拉會看到Tomcat版本,例如:
在這裏插入圖片描述github

二、修改內嵌版本

很是簡單,直接經過添加properties的Tomcat版本就能解決,以下:spring

<properties>
  <tomcat.version>9.0.31</tomcat.version>
</properties>

添加這個以後,spingboot的默認啓動的tomcat版本就能夠達到你本身須要的了。到這裏基本就完成了。apache

三、異常狀況

若是發現出現如下啓動報錯,說明缺乏依賴tomcat-julitomcat

Caused by: java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
  at org.apache.catalina.util.LifecycleBase.<clinit>(LifecycleBase.java:37)
  at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:169)
  at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:164)
  at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134)
  ... 13 common frames omitted

到這裏基本就結束了,springboot啓動會看到Tomcat的版本號:springboot

在這裏插入圖片描述


關注Github:1/2極客ide

關注博客:御前提筆小書童工具

關注網站:HuMingfeng網站

關注公衆號:開發者的花花世界

相關文章
相關標籤/搜索