我有一个关于java ClassLoaders的问题。我正在尝试使用不同的ClassLoaders,以便能够在同一个程序中运行不同版本的JAR。
我在某处听说过,如果您使用一个ClassLoader加载一个类,那么从该类中调用(被加载)的所有类都将使用相同的ClassLoader。这是正确的吗?
如果没有,有没有一种巧妙的方法来设置ClassLoader的上下文(比如说,从特定类/库调用的所有内容都应该使用相同的ClassLoader)。
发布于 2012-11-13 10:44:32
这不是一个简单的主题,我建议在网上做更多的研究,因为这里没有足够深入的答案。但是,作为一个简短的概要:
由于类加载器委派,通过普通类引用加载的
根据经验,在执行您知道来自嵌套类加载器的代码时(可能是因为您设置了它),您应该适当地设置当前上下文类加载器。
https://stackoverflow.com/questions/13354640
复制相似问题