spring boot 調整內置tomcat版本


tomcat最近報ajp協議漏洞,如果應用是以war包部署在單獨的tomacat中,需要修改相關配置,並要求升級tomcat到對應的版本,具體要求可以參考下面這篇文章

https://bbs.huaweicloud.com/blogs/151237

但是spring boot內置tomcat這種,如果沒有單獨設置ajp協議的,實際上不用升級內置tomcat版本,但是如果一定要升級的話,可以參考如下步驟

1.首先在pom文件的properties節中增加<tomcat.version>****</tomcat.version>(tomcat.version的名字不能寫錯,因為在其它jar包的pom文件中可能引用了tomcat.version),這樣在本項目中引用tomcat.version的地方就都會更改了,這里我們項目的tomcat升級到的對應版本是8.5.51和9.0.31,就改成<tomcat.version>8.5.51</tomcat.version>和<tomcat.version>9.0.31</tomcat.version>

復制代碼
<maven.test.skip>true</maven.test.skip>
        <log4j-nosql.version>2.9.1</log4j-nosql.version>
        <mybatis-plus.version>2.1.9</mybatis-plus.version>
        <druid.version>1.1.6-JXD-1</druid.version>
        <fastjson.version>1.2.44</fastjson.version>
        <spring-boot-starter.version>1.5.10.RELEASE</spring-boot-starter.version>
        <mysql-connector-java.version>5.1.38</mysql-connector-java.version>
        <spring-boot-starter-quartz.version>2.0.0.RELEASE</spring-boot-starter-quartz.version>
        <mybatisplus-spring-boot-starter.version>1.0.5</mybatisplus-spring-boot-starter.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <tomcat.version>8.5.51</tomcat.version>
復制代碼

之后刷新maven

 

 引用的tomcat就會升級到對應的版本

但是有的版本運行時會報錯,原因可能是,有的類庫會引用你所升級的tomcat版本(我的是8.5.51)中沒有的相關的tomcat的jar包,這時需要手動引用一下,

例如:

復制代碼
<dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-annotations-api</artifactId>
            <version>8.5.51</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-jdbc</artifactId>
            <version>8.5.51</version>
        </dependency>
復制代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM