应用服务器内部的类加载机制是开发人员常见的困惑来源;这就是为什么我想问一个关于 tomcat 7 服务器中这个机制的问题: 我有一个网络应用程序 sample.war,它依赖于 jgroups 库,
放置 jgroups.jar tomcat/lib 或 tomcat/webapps/sample.war/WEB-INF/lib 的最佳位置是什么?
如果我必须使用 jgroups 版本(比如 2.7.x 和 3.x)
- 当我将 jgroups 3.x 放在 tomcat/lib 下,将 jgroups 2.7.x 放在 tomcat/webapps/sample.war/WEB-INF/lib 下时,我的应用程序将在运行时使用版本?
提前致谢
最佳答案
按照 Tomcat 最佳实践(即,在您的应用程序中复制所有 jar)和官方文档(这取决于您的 tomcat 版本),您必须将所有 jar 放在 /WEB-INF/lib 下 文件夹。
但是,如果您需要在应用程序之间共享 jar,您不能为此将任何 jar 放入 tomcat/lib 中,您有 tomcat/shared 文件夹和tomcat/common文件夹,可以在cont/catalina.properties中配置使用哪个文件夹,看你的环境是Linux还是Windows。
Here你可以找到一个很好的教程。
关于tomcat - tomcat 7中的类加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21700975/