关闭

Spring 自动扫描 不支持jar包 <component-scan> 的解决方案

2260人阅读 评论(1) 收藏 举报
分类:
 

近期在用spring3做一个项目,用到了里面的一个自动扫描组件的特性.但是工程分为了好多个小项目,有个统一的开发平台,这个平台的支撑类会被我做成一个jar包被其它几个子工程引用.

 

开发的时候使用的是工厂引用工厂的方式,在eclipse里面的classpath里面把该平台工厂引入即可,避免了每次修改了平台代码都要重新打包的问题.这个方法不是在web project类型,对于web-project,还是需要沿用老办法,即打成jar包,然后让web-project引用进来.

 

这时发现个问题,就是平台下junit测试正常的一些spring bean,到了web-project里面发现无法关联到了.

搞了很久,也上网查了很多资料,一开始以为是要修改<context:component-scan >里面的resource-pattern属性,后来改来改去都解决不了问题.

 

最后发现一个问题,是我们的eclipse自带的jar打包程序,默认打包的时候有个选项<Add directory entries>没有勾选,只要勾选了,就完全没有问题了,无须再对<context:component-scan >进行任何修改了.

 

罪恶的<Add directory entries>选项啊!


转载:http://xinglu.iteye.com/blog/1457029

3
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:33708次
    • 积分:503
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:16篇
    • 译文:0篇
    • 评论:8条
    文章分类