栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Tomcat源码导入idea

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Tomcat源码导入idea

1.下载tomcat代码

本文选择9.0分支,此版本servlet还是javax开头的 github

2.下载之后的目录结构

3.源码使用ant构建(这里改用pom)

  4.0.0

  org.apache.tomcat
  tomcat
  tomcat
  9.0.19

  
    UTF-8
    1.8
    1.8
  
  
    
      junit
      junit
      4.12
      test
    
    
      org.apache.ant
      ant
      1.10.11
    
    
      wsdl4j
      wsdl4j
      1.6.3
    

    
    
      javax.xml.soap
      javax.xml.soap-api
      1.4.0
    

    
      org.apache.geronimo.specs
      geronimo-jaxrpc_1.1_spec
      2.1
    

    
      org.eclipse.jdt
      ecj
      3.17.0
    


    
      org.easymock
      easymock
      4.0.2
      test
    

    
      biz.aQute.bnd
      biz.aQute.bndlib
      5.2.0
      provided
    

    
      com.unboundid
      unboundid-ldapsdk
      3.2.0
    
  


直接使用idea重新导入,jdk暂时选择1.8

4.问题解决 4.1控制台乱码
信息: 至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。
九月 29, 2021 3:52:17 上午 org.apache.catalina.util.SessionIdGeneratorbase createSecureRandom
警告: 使用[SHA1PRNG]创建会话ID生成的SecureRandom实例花费了[149]毫秒。
九月 29, 2021 3:52:17乱码 修改conf/logging.properties的编码(现在默认utf-8,基本无修改) 警告: 使用[SHA1PRNG]创建会话ID生成的SecureRandom实例花费了[149]毫秒 乱码

这里的乱码本质原因是properties文件乱码,tomcat采用系统的读取配置文件方式,使用的是URL.openStream,然后采用properties.load方法,这样会导致乱码

解决方案

把两个国际化文件读取重写Localizer、StringManager

4.2访问8080报错jsp等class找不到
org.apache.catalina.startup.ContextConfig#configureStart方法加一句代码
//TODO 手工加的
        context.addServletContainerInitializer(new JasperInitializer(), null);
        

5.访问localhost:8080

注意点,有其他编译选项发,jdk11-16可以直接注释
其他报错正常解决就行

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/282104.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号