• SpringBoot系列(二)指定内置tomcat版本


    简言
    SpringBoot内置的tomcat版本是随着SpringBoot版本走的,比如我这SpringBoot 版本是1.5.9,内置tomcat版本是8.5.23;假如需要修改内置的tomcat版本号,则在POM依赖里< properties >里添加< tomcat.version>8.0.42< /tomcat.version>

    注意:我上面标签是有空格的;

    
        8.0.42
    
    
    • 1
    • 2
    • 3

    指定完tomcat版本后可以查看maven 依赖树,查看内置tomcat版本是否变为指定版本,重启项目,但是有时候启动会报错:

    Tomcat启动报错代码 :

    Caused by: java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory 
      at org.apache.catalina.util.LifecycleBase.(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 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

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

     
       org.apache.tomcat 
       tomcat-juli 
       ${tomcat.version} 
     
    
    • 1
    • 2
    • 3
    • 4
    • 5

    修改完后,能在控制台启动日志里看到tomcat的启动版本:

      .   ____          _            __ _ _
     /\ / ___'_ __ _ _(_)_ __  __ _    
    
    • 1
    • 2

    ( ( )___ | '_ | '| | ’ / ` |
    / )| |)| | | | | || (| | ) ) ) )
    ’ |
    | .__|| ||| |, | / / / /
    =========|
    |==============|
    /=///_/
    :: Spring Boot :: (v1.5.9.RELEASE)

    2018-03-09 11:01:58.104  INFO 5036 --- [           main] com.jd.m.tg.MTgApplication               : The following profiles are active: dev
    2018-03-09 11:01:58.218  INFO 5036 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@9bfddc: startup date [Fri Mar 09 11:01:58 CST 2018]; root of context hierarchy
    2018-03-09 11:01:58.546  INFO 5036 --- [kground-preinit] o.h.validator.internal.util.Version      : HV000001: Hibernate Validator 5.3.6.Final
    2018-03-09 11:02:01.176  INFO 5036 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 80 (http)
    2018-03-09 11:02:01.188  INFO 5036 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
    2018-03-09 11:02:01.190  INFO 5036 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.0.42
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
  • 相关阅读:
    Lambda的使用场景
    django开发: 富文本编辑器TinyMCE的默认字体大小及一键排版功能
    Linux13 --- my_bash的部分实现
    性能测试-CPU性能分析,用户态us高,初步定位到代码行
    Linux Namespace:轻量级虚拟化技术简介
    数据仓库概念梳理
    算法-分数
    keycloak~网站对接到Keycloak的步骤
    RedisJson 横空出世!
    木舟0基础学习Java的第十六天(异常,分类,自定义异常,注意事项)
  • 原文地址:https://blog.csdn.net/m0_67401499/article/details/126515423