我想在Tomcat9中的多个Web应用程序之间共享一些属性文件和类JAR。我已经创建了文件夹"/opt/tomcat/shared/{classes,lib}",并将我的属性文件放入"…/classes",将JAR放入"…/lib"。
然后,我编辑了"catalina.properties",并根据文档将shared.loader
设置为shared.loader="/opt/tomcat/shared/classes","/opt/tomcat/shared/lib/*.jar"
。我也看到这是作为答案张贴在许多堆栈溢出。
属性文件似乎还可以,但我正在为JAR文件中的类获取ClassNotFoundExeptions
。如果我将它们复制到网络应用程序的WEB-INF/lib
中,那么事情就开始工作了(但由于各种原因,这不是一个可行的选择(。
这不是权限,我已经给了目录777和666;GNU/Linux上的文件夹,也在Windows上尝试过。问题是一样的。
我做错了什么?正确的方法是什么?由于某些原因,必须从外部文件夹中提取JAR。
发现这是共享类JAR的一些其他依赖项的问题,在WEB-INF/lib
中是,而不是shared/lib
。
对位置进行快速重组,为那些JAR文件提供shared/dependencies
,事情就开始工作了。