如何在Tomcat 和 Eclipse下执行共享jar包的工程?

来源:互联网 发布:鲁大师清理优化有用吗 编辑:程序博客网 时间:2024/06/04 19:45

近期,涉及项目改造,遇到多个工程,jar包几乎一样,同时发布到同一个 Tomcat 下,重复加载jar包,Tomcat 启动很慢,尝试了一下共享jar包的方法,效果还可以。下面把几个关键点介绍一下。


一、准备工作

(1)Tomcat7.0.76

(2)Jdk1.6 及以上

(3)Eclipse,新建2个WEB工程 A 和 B


二、Tomcat下配置共享jar包

(1)建共享目录:

        在 tomcat 的 lib 目录下,新建一个 shared 子目录,将共享jar包拷贝进去。

        例如:C:\Tomcat7.0.76\lib\shared

(2)修改配置项:

        在 tomcat 的 conf 目录下,找到 catalina.properties 文件,

        修改配置 shared.loader=${catalina.base}/lib/shared/*.jar

        或者追加 common.loader=原配置项略,${catalina.home}/lib/shared/*.jar

(3)发布程序:

        在 tomcat 的 webapps 目录下,发布 A 和 B 工程,将2个工程中共用的jar包,

        全部挪至 tomcat 的共享目录下。启动Tomcat,可以发布成功!


三、Eclipse 下执行2个工程

(1)如果是创建了 Servers 服务的,注意修改这里的 catalina.properties 文件,

        修改配置 shared.loader=${catalina.home}/lib/shared/*.jar

        或者追加 common.loader=原配置项略,${catalina.home}/lib/shared/*.jar

       注意:这里设置 ${catalina.home} 很重要,我曾经设置为 ${catalina.base},

       编译不报错,启动总是失败,提示找不到Spring的ContextLoaderListener 类等等。


(2)清空2个WEB工程的 WebContent 或 WebRoot 的WEB-INF下的lib目录,此时程序编译会报错,怎么办?


(3)编译报错,可以选中工程,右键选择属性【Properties】,在 Java Build Path-->Libraries 页签中,

        点击【Add Library】按钮,在弹出的对话框中,选择【Server Runtime】,下一步直至将下图中的

        【Apache Tomcat v7.0】加入到工程中来,展开该节点,可以看到Tomcat的lib目录下的Jar包,

        包括共享Jar包都引入进来了,重新编译该工程即可。

(4)好了,准备工作做好之后,可以在Eclipse下启动Tomcat了,跟踪或运行都可以。


(5)万一,工程较大,数量较多,启动超过45秒,Eclipse 会报一个错,可以参考下面文章来解决!

          参考地址:http://blog.csdn.net/roc1029/article/details/12649799


0 0
原创粉丝点击