在tomcat中自动在.war文件之间共享相同的.jar文件

时间:2013-02-26 22:03:36

标签: tomcat tomcat7

注意:我对JVM部署很新,所以请随时告诉我这是一个完全错误的方法:)

我有一堆自包含的.war文件,包含所有依赖项.jar文件。但是,我的一些项目有共享依赖项。 是否可以设置tomcat来自动检测相同的.jar文件并在主机上重复使用?或者我是否必须从.war手动排除这些.jar依赖项,并将它们放在CATALINA_HOME / lib中?

我想象一个检查.jar文件信息和校验和的系统是一个足够好的测试。

注意:我需要这个的实际原因是由于JNI。为了降低内存使用率等,让其他共享依赖项变得共享当然会很好,但是对于使用相同JNI模块的.wars来说这是绝对的要求,因为当Tomcat尝试加载.jar时我得到类加载器异常第二次加载JNI模块的文件。 Tomcat显然不支持这一点。

1 个答案:

答案 0 :(得分:1)

您需要手动执行此操作并将其填入类路径的共享空间。

可以是CATALINA_HOME / lib,也可以自己手动添加到Tomcat的起始类路径。

但不管怎样,你需要手动管理它,或者你可以使用某种脚本自动化它,但是jar更改(任何类型)都需要重启Tomcat。