查看和指定SpringBoot内嵌Tomcat的版本
查看当前使用的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
如下图, 红框标记的就是tomcat的版本。


查看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>
查看和指定SpringBoot内嵌Tomcat的版本的更多相关文章
- SpringBoot内嵌Tomcat开启APR模式(运行环境为Centos7)
		网上查到的一些springboot内嵌的tomcat开启apr的文章,好像使用的springboot版本较老,在SpringBoot 2.0.4.RELEASE中已经行不通了.自己整理了一下,供参考. ... 
- Spring Boot启动过程(五):Springboot内嵌Tomcat对象的start
		标题和上一篇很像,所以特别强调一下,这个是Tomcat对象的. 从TomcatEmbeddedServletContainer的this.tomcat.start()开始,主要是利用Lifecycle ... 
- maven打包排除spring-boot内嵌tomcat容器依赖jar
		在pom文件中添加打包排除配置信息. <plugin> <artifactId>maven-war-plugin</artifactId> <version& ... 
- springboot去除内嵌tomcat和打包在tomcat中运行需要做的步骤
		去除内嵌tomcat和添加jsp依赖 去除内嵌tomcat 在springboot启动依赖中去除内嵌tomcat <dependency> <groupId>org.sprin ... 
- 精尽Spring Boot源码分析 - 内嵌Tomcat容器的实现
		该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ... 
- 学习Tomcat(七)之Spring内嵌Tomcat
		前面的文章中,我们介绍了Tomcat容器的关键组件和类加载器,但是现在的J2EE开发中更多的是使用SpringBoot内嵌的Tomcat容器,而不是单独安装Tomcat应用.那么Spring是怎么和T ... 
- 内嵌tomcat最简单用法
		maven项目引入内嵌tomcat依赖 <dependency> <groupId>org.apache.tomcat.embed</groupId> <ar ... 
- spring boot 2  内嵌Tomcat Stopping service [Tomcat]
		我在使用springboot时,当代码有问题时,发现控制台打印下面信息: Connected to the target VM, address: '127.0.0.1:42091', transpo ... 
- Spring Boot内嵌Tomcat session超时问题
		最近让Spring Boot内嵌Tomcat的session超时问题给坑了一把. 在应用中需要设置session超时时间,然后就习惯的在application.properties配置文件中设置如下, ... 
随机推荐
- elasticsearch6.7 01.入门指南(2)
			2.安装(略) 默认情况下,elasticsearch 使用端口 9200 来访问它的 REST API.如果有必要,该端口也可以配置 3.探索集群 3.1 The REST API 既然我们已经启动 ... 
- python 百度cpc点击
			# coding=utf8 import urllib2 import string import urllib import re import random #设置多个user_agents,防止 ... 
- 洛谷P1742 最小圆覆盖(计算几何)
			题意 题目链接 Sol 暴力做法是\(O(n^3)\)枚举三个点然后check一下是否能包含所有点 考虑一种随机算法,首先把序列random_shuffle一下. 然后我们枚举一个点\(i\),并维护 ... 
- jsPlumb.jsAPI阅读笔记(官方文档翻译)
			jsPlumb DOCS 公司要开始做流程控制器,所以先调研下jsPlumb,下文是阅读jsPlumb提供的document所产生的归纳总结 setup 如果不使用jQuery或者类jQuery库,则 ... 
- ThreadLocal终极源码剖析-一篇足矣!
			本文较深入的分析了ThreadLocal和InheritableThreadLocal,从4个方向去分析:源码注释.源码剖析.功能测试.应用场景. 一.ThreadLocal 我们使用ThreadLo ... 
- JavaScript大杂烩14 - 使用JQuery(上)
			JQuery意义 - Why? 为什么要使用JQuery,从我个人来说,就是这么几点:简化代码 + 统一行为 + 功能强大 + 搭配方便. 简化代码是从写代码的角度来说的,实现同样的功能,如果用Jav ... 
- c#所有部门及其下所部门生成树形图(递归算法获取或键值对方式获取)
			部门数据库的设计: 代码: /// <summary> /// 获取部门(入口) /// </summary> /// <returns></returns& ... 
- log4Net辅助类
			public class Log { private ILog logger; public Log(ILog log) { this.logger = log; } public void Debu ... 
- Centos7查询开机启动项服务
			问题描述: 最近安装了zabbix设置了一些开机启动服务 例如:zabbix-server.service,httpd.service,mariadb.service,或者系统的firework.se ... 
- mysqld_safe启动服务器总结
			mysqld_safe是服务端工具,用于启动mysqld,并且是mysqld的守护进程,mysqld_safe加&在后台运行$BASEDIR/bin/mysqld_safe & 优点就 ... 
