转载自:http://www.jb51.net/article/116357.htm
在日常开发中往往会对公共的模块打包发布,然后调用公共包的内容。然而,最近对公司的公共模块进行整理发布后。spring却无法扫描到相应的bean,下面这篇文章主要给大家介绍了关于Spring自动扫描时无法扫描jar包中bean的解决方法,需要的朋友可以参考下。
发现问题
前几天用eclipse打包了一个jar包,jar包里面是定义的Spring的bean。
然后将jar包放到lib下,设置spring的自动扫描这个jar包中的bean,可谁知根本无法扫描到bean,显示错误就是找不到bean,当时就纳闷儿了,为什么扫描不到,结果搜索之后才发现,用eclipse打包jar包要勾选“Add directory entries”才能被Spring正确扫描到,居然有这个说法,呵呵… 不知道
勾选“Add directory entries”才能被spring扫描到
解决方法
于是又搜索了下,勾选“Add directory entries”和不勾选有什么区别,还真有,通过命令“jar tf selected.jar
”就可以查看到jar包中的内容,勾选了的jar包会展示目录层级信息,而没有勾选的就不会展示,估计是展示了目录层级的才能被spring扫描到吧。
“Add directory entries”加入了目录层级信息
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。