当我们启动一个tomcat的服务的时候,jar包和claess文件是是以怎么样的顺序被加载进来的?
加载顺序:
1. $java_home/lib 目录下的java核心api
2. $java_home/lib/ext 目录下的java扩展jar包
3. java -classpath/-Djava.class.path所指的目录下的类与jar包
4. $CATALINA_HOME/common目录下按照文件夹的顺序从上往下依次加载
5. $CATALINA_HOME/server目录下按照文件夹的顺序从上往下依次加载
6. $CATALINA_BASE/shared目录下按照文件夹的顺序从上往下依次加载
7. 我们的项目路径/WEB-INF/classes下的class文件
8. 我们的项目路径/WEB-INF/lib下的jar文件
在同一个文件夹下,jar包是按顺序从上到下依次加载
由ClassLoader的双亲委托模式加载机制我们可以知道,假设两个包名和类名完全相同的class文件不再同一个jar包,如果一个class文件已经被加载java虚拟机里了,那么后面的相同的class文件就不会被加载了。
分享到:
相关推荐
主要给大家介绍了关于tomcat8改了jar加载顺序的踩坑记录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
tomcat-juli.jar和tomcat-juli-adapters.jar tomcat-juli.jar和tomcat-juli-adapters.jar
tomcat-coyote.jar
tomcat-redis依赖jar包
tomcat详解与启动加载顺序 tomcat详解与启动加载顺序
tomcat6的log4j配置所需要的jar包、日志分割 准备三个包:log4j-1.2.17.jar tomcat-juli.jar tomcat-juli-adapters.jar 放到tomcat的lib目录或者是工程的WEB_INF/lib下
详细说明了tomcat启动过程中 加载资源的顺序
tomcat-juli.jar 用于在tomcat启动报错时除错
tomcat-juli.jar,tomcat-juli-adapters.jar, log4j-1.2.12.jar tomcat 6日志输出
tomcat-dbcp.jar
tomcat-api.jar
NULL 博文链接:https://yunlong167167.iteye.com/blog/2087430
tomcat-jdbc.jar
tomcat配置日志文件
在tomcat中配置log4j,tomcat-juli.jar
包含tomcat集群redis会话共享的依赖jar包,包含有2.1.0和2.7.2两个版本,配置方式稍微有点差别,两个版本不兼容。 2.1.0版包含 commons-pool-1.6.jar jedis-2.1.0.jar tomcat-redis-session-manager-1.2-tomcat-7....
myEclipse中运行Tomcat源码所需jar包,需要的朋友下载,完全可以用