我想在Tomcat 9中的多个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"
设置为documentation。我也看到此消息是许多Stackoverflows中的答案。
属性文件似乎可以正常使用,但是我在JAR文件中获得类的ClassNotFoundExeptions
。如果我将它们复制到Web应用程序的WEB-INF/lib
中,则事情开始起作用(但是由于各种原因,这不是可行的选择)。
这不是权限,我给GNU / Linux上的目录和文件夹指定777和666,并在Windows上也尝试了。问题是一样的。
我做错了什么,正确的方法是什么?由于种种原因,JAR 必须从外部文件夹中拾取。
结果证明这是共享类JAR的某些其他依赖关系的问题,这些依赖关系在WEB-INF/lib
中而不是shared/lib
中,[快速重组位置,以使那些JAR文件和事情开始可以使用shared/dependencies
。