tomcat中jar包类的加载顺序
2015-08-28 15:25
597 查看
当我们启动一个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文件就不会被加载了。
加载顺序:
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文件就不会被加载了。
相关文章推荐
- tomcat插件安装及项目部署
- IntelliJ IDEA 14.x 与 Tomcat 集成,创建并运行Java Web项目
- Android模拟器访问本地tomcat下web应用
- Tomcat设置IP地址或者域名访问
- 2.tomcat下安装solr5及数据库索引
- Tomcat修改端口号
- nginx+tomcat集群负载均衡下tomcat故障后的的会话转移
- CentOS7 下 Java_Tomcat安装
- linux下一台机器安装配置多个tomcat
- 欢迎使用CSDN-markdown编辑器
- Tomcat7 session 持久化
- tomcat 访问本地C,D盘等文件配置
- linux下tomcat服务的相关命令
- jenkins+maven+tomcat持续集成配置
- maven一键部署tomcat war包
- tomcat部署服务的四种方式
- tomcat context元素属性介绍
- tomcat启动startup.bat一闪而过
- Tomcat
- Linux下Tomcat+Maven+Jenkins搭建