有时候,在项目开发时我们会有这样的需求:
在有个工程里开发代码打jar包,供其他web工程直接使用,但发现配置文件与代码一起打包后,web工程没有加载读取配置文件,怎么办?
答案是肯定可以做到的:
一、假设现有web工程A、web工程B。
A目录结构如下:
--WEB_A
----src_core
--------com.amu.core
-------------Amu_1.java
-------------Amu_2.java
--------applicationContext-amu1.xml
--------applicationContext-amu2.xml
【工程A里有目录src_core,里面有包com.amu.core和2个配置文件,包里有2个java代码】
二、打jar包为A_core.jar.
三、web工程B是用struts2+spring3
web.xml配置如下:
四、工程B引用A_core.jar
此时发现启动工程B后没有加载jar包的2个配置文件。
分析发现:web.xml里配置的是自匹配,也就是所有classpath下符合applicationContext-*.xml格式的都会被加载,但jar包除外,因此,我们需要单独制定,如下:
注:打包时,需选上下图标红部分: