classloader隔离练习

简介:

平时,我们用maven来管理项目的依赖包,可是有时候还是会出现jar包多版本同时存在的问题,这时,我们可以利用classloader的隔离机制来解决。

1.我们自定义classloader,然后设置它为应用的contextClassLoader运行。

2.自定义classLoader加载特定目录的jar包,同时把加载过的Class缓存起来,这时classLoader就起到隔离作用,像一个容器,只装自己的jar包。

3.Class的查找机制,如果自定义classLoader里加载过,取出来直接返回,没有则用父classLoader查找加载。

4.自定义classLoader加载自己指定目录的jar包,父classLoader则加载classpath里的包或者类。

可能说的比较简洁,大家感兴趣还是直接看代码吧。
练习代码看这里


相关文章
|
前端开发 安全 Java
类加载器原理
一、类加载 二、链接 三、初始化
类加载器原理
|
2月前
|
缓存 前端开发 Java
JVM知识体系学习二:ClassLoader 类加载器、类加载器层次、类过载过程之双亲委派机制、类加载范围、自定义类加载器、编译器、懒加载模式、打破双亲委派机制
这篇文章详细介绍了JVM中ClassLoader的工作原理,包括类加载器的层次结构、双亲委派机制、类加载过程、自定义类加载器的实现,以及如何打破双亲委派机制来实现热部署等功能。
56 3
|
5月前
|
存储 前端开发 Java
(二)JVM成神路之剖析Java类加载子系统、双亲委派机制及线程上下文类加载器
上篇《初识Java虚拟机》文章中曾提及到:我们所编写的Java代码经过编译之后,会生成对应的class字节码文件,而在程序启动时会通过类加载子系统将这些字节码文件先装载进内存,然后再交由执行引擎执行。本文中则会对Java虚拟机的类加载机制以及执行引擎进行全面分析。
|
7月前
|
前端开发 安全 Java
JVM ClassLoader 类加载器
类加载器,即ClassLoader,它负责加载class文件,class文件在文件开头有特定的文件标示,并且ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定。
|
7月前
|
缓存 安全 前端开发
JVM(类的加载与ClassLoader、双亲委派机制)
JVM(类的加载与ClassLoader、双亲委派机制)
|
安全 前端开发 Java
【JVM】类加载器:双亲委派机制、沙箱安全机制
【JVM】类加载器:双亲委派机制、沙箱安全机制
189 0
【JVM】类加载器:双亲委派机制、沙箱安全机制
|
前端开发 Java 应用服务中间件
JVM 类加载器机制(上)
本文主要是讲述 JVM 类加载过程和 JVM 提供的集中类加载器以及双亲委派机制,通过 Tomcat 的类加载机制阐述如何打破双亲委派机制的方法。
101 0
JVM 类加载器机制(上)
|
安全 Java 应用服务中间件
JVM 类加载器机制(下)
本文主要是讲述 JVM 类加载过程和 JVM 提供的集中类加载器以及双亲委派机制,通过 Tomcat 的类加载机制阐述如何打破双亲委派机制的方法。
121 0
JVM 类加载器机制(下)
|
消息中间件 安全 前端开发