Java类加载器-不同包之间的类冲突

Java类加载器-不同包之间的类冲突,java,tomcat,jvm,classloader,Java,Tomcat,Jvm,Classloader,我已经在Tomcat容器上创建了示例webapp。有一个第三方包(我们称之为包P1-NEW)包含类A 我还从packageP1-OLD导入了另一个包(P2),该包使用不同版本的classA。因此类装入器中有两种不同的类A实现 最糟糕的是,当我试图执行来自P2的某个类时,该类使用来自P1-OLD的类A,调用来自P1-NEW的类A!怎么可能呢?如何改变它?是否有可能从命令行显示JVM中所有加载的类

我已经在Tomcat容器上创建了示例webapp。有一个第三方包(我们称之为包P1-NEW)包含类A

我还从packageP1-OLD导入了另一个包(P2),该包使用不同版本的classA。因此类装入器中有两种不同的类A实现

最糟糕的是,当我试图执行来自P2的某个类时,该类使用来自P1-OLD
的类A,调用来自P1-NEW的类A!怎么可能呢?如何改变它?是否有可能从命令行显示JVM中所有加载的类