【发布时间】:2014-10-11 19:12:03
【问题描述】:
我有一个使用很多 jar 的大型应用程序,大部分是其他应用程序(也是我的)之间的常用 jar,所以,我想创建一个共享存储库。
我以这种方式编辑了 catalina.properties (Tomcat 7):
shared.loader=${catalina.base}/mylibs/*.jar
如果我将所有项目的 jars 放在该目录中一切顺利并且应用程序正常运行,但我不希望这样,我只想将共享库放在那里并将其余 jars 通常留在我的 WAR 中( WEB_INF/lib)..
如果我这样做(共享库中的一些 jar 和 war 文件中的其余 jar),我的应用程序开始在 war 中的每个 jar 中引发 ClassNotFoundException。
根据:http://tomcat.apache.org/tomcat-7.0-doc/class-loader-howto.html 应该可以正常工作,正如他们所说:
因此,从 Web 应用程序的角度来看,类或资源加载按以下顺序查看以下存储库:
JVM 的引导类 系统类加载器类(如上所述) /WEB-INF/Web 应用程序的类 /WEB-INF/lib/*.jar 您的 Web 应用程序 通用类加载器类(如上所述)
有人知道我做错了什么吗?干杯
【问题讨论】:
标签: tomcat