查看當前使用的Tomcat版本號#
Maven Repository中查看#
比如我們需要查Spring Boot 2.1.4-RELEASE的內嵌Tomcat版本, 可以打開鏈接:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-tomcat/2.1.4.RELEASE
查看dependepency#
透過IDE#
目前大家主要使用IDEA來進行開發,下面是IDEA查看Tomcat的版本:
透過命令行#
Gradle可以采用以下命令打印依賴項:
./gradlew dependencies
數據結果示例:
...
| +--- org.springframework.boot:spring-boot-starter-tomcat:2.1.0.RELEASE | | +--- javax.annotation:javax.annotation-api:1.3.2 | | +--- org.apache.tomcat.embed:tomcat-embed-core:9.0.12 | | +--- org.apache.tomcat.embed:tomcat-embed-el:9.0.12 | | \--- org.apache.tomcat.embed:tomcat-embed-websocket:9.0.12 | | \--- org.apache.tomcat.embed:tomcat-embed-core:9.0.12 ...
Maven可以采用以下命令打印依賴項:
mvn dependency:tree > output.txt # 輸出到文件里
指定SpringBoot項目內嵌的Tomcat版本#
直接升級SpringBoot的版本#
因為SpringBoot內嵌的Tomcat會伴隨SpringBoot的升級而升級,所以可以根據需要選擇合適的Tomcat版本,這種特別需要升級Tomcat版本時使用,當然還是要根據情況,因為升級SpringBoot的版本也是有成本的。
排除SpringBoot的Tomcat,指定Tomcat版本#
有時候我們需要在特定情況下使用特定的Tomcat版本,這時候總不能因為Tomcat就改變SpringBoot的版本,所以可以采用排除SpringBoot中的Tomcat包,然后手動指定Tomcat的版本,當然還要引入Tomcat相關的包。
Gradle的配置
compile('org.springframework.boot:spring-boot-starter-web') { exclude module: "spring-boot-starter-tomcat" } compile 'org.apache.tomcat.embed:tomcat-embed-core:+' compile 'org.apache.tomcat.embed:tomcat-embed-el:+' compile 'org.apache.tomcat.embed:tomcat-embed-logging-juli:+' compile 'org.apache.tomcat.embed:tomcat-embed-websocket:+'
如果不指定版本,則會使用最新的Tomcat版本, 否則直接指定對應的版本號。
Maven的配置
在 pom.xml文件里面添加一個標簽<properties>
,添加期望的版本。
<tomcat.version>8.0.30</tomcat.version>
添加必要的Jar包:
<dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-juli</artifactId> <version>${tomcat.version}</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-logging-juli</artifactId> <version>${tomcat.version}</version> </dependency>