• springboot 查看和修改内置 tomcat 版本


    1. 解析Spring Boot父级依赖
      去到项目的根pom文件中,找到parent依赖:

      <dependency>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-parent</artifactId>
                  <version>${springboot.version}</version>
                  <type>pom</type>
                  <scope>import</scope>
              </dependency>
      1234567
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8

      这块配置就是Spring Boot父级依赖,有了这个,当前的项目就是Spring Boot项目了,spring-boot-starter-parent是一个特殊的starter,它用来提供相关的Maven默认依赖,使用它之后,常用的包依赖可以省去version标签。关于Spring Boot提供了哪些jar包的依赖,可以查看当前用的springboot版本对应的pom文件:/Users/mac/MavenRepo/org/springframework/boot/spring-boot-dependencies/2.1.0.RELEASE/spring-boot-dependencies-2.1.0.RELEASE.pom

    2. 打开这个pom文件,搜索 tomcat.version

      <tomcat.version>9.0.12</tomcat.version>
      1
      
      • 1
      • 2

      可以查看到我们使用的tomcat版本为9.0.12。
      ①可以直接在这里修改你想要的tomcat版本

      ②在你自己的项目的pom里面添加版本,就可以直接覆盖这里的版本了。如:

      <properties>	
      	<tomcat.version>10.0.0</tomcat.version>
      </properties>
      123
      
      • 1
      • 2
      • 3
      • 4

      添加这个之后,spingboot的默认启动的tomcat版本就可以达到你自己需要的了。到这里基本就完成了。

      但是有时候启动会报错:

      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
      123456
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7

      因为这个时候的tocmat缺少jar包,maven项目的话加上下面这个依赖就好了:

      <dependency>
      	<groupId>org.apache.tomcat</groupId>
      	<artifactId>tomcat-juli</artifactId>
      	<version>${tomcat.version}</version>
       </dependency>
      12345
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6

      tomcat 9.0 官方说明文档:http://tomcat.apache.org/tomcat-9.0-doc/config/http.html

    转载至:https://blog.csdn.net/iamlihongwei/article/details/101759986

  • 相关阅读:
    VSCODE 系列(一)VSCODE下载和安装
    React@16.x(37)路由v5.x(2)路由信息
    LeetCode-热题100-笔记-day29
    python functools.wraps保留被装饰函数属性
    论文泛读【FiLM: Visual Reasoning with a General Conditioning Layer】
    JDBC-API详解-DriverManager类
    php获取农历日期节日
    P2P分布式搜索引擎YaCy
    深度学习神经网络实战:多层感知机,手写数字识别
    在线问题反馈模块实战(二十一):完结篇
  • 原文地址:https://blog.csdn.net/asd54090/article/details/136653402