- 在我的
/tomcat/lib
目录中,我有课SharedClass
(因此与所有网络应用程序共享)。 - 在我的网络应用程序中,
WEB-INF/lib
我有 classLocalClass
。 SharedClass
有参考LocalClass
。
在我的网络应用程序中,我尝试创建一个实例,SharedClass
但它失败并显示以下消息:
NoClassDefFoundError:本地类。
由于SharedClass
是共享的并且LocalClass
是我的网络应用程序的本地应用程序,我希望它可以工作,但它没有。
我的怀疑是SharedClass
由Tomcat父类加载器LocalClass
加载并由Web App类加载器加载。由于SharedClass
是由父级加载的,我假设它的所有依赖项也必须由父级加载。因此,父级找不到LocalClass
并抛出错误。
这有意义吗?有没有办法解决这个问题(不写我自己的类加载器)?