BeanCreationException

来源:互联网 发布:高仿椰子 知乎 编辑:程序博客网 时间:2024/06/08 00:45

以前配置没有问题的项目在新加了块代码后,在启动的时候就提示:

 Context initialization failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSourceAdminController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private xxxx.xxx.service.datasource.DataSourceService xxxx.xxx.xxx.controller.datasource.DataSourceAdminController.dataSourceService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [xxxx.xxx.service.datasource.DataSourceService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}


这块的自动注入一直是没有问题的来。后来找了好久, 把新代码相关的东西又全部去掉,测试了很多次,后来发现在pom文件中加入

<dependency>

<groupId>org.jasig.cas</groupId>

<artifactId>cas-client-core</artifactId>

<version>3.1.2</version>

</dependency>

后就会报那个错误,最后没有办法,把这个包放到了web-info/lib的目录下面,然后项目引用外部的jar,启动后正常了。太奇葩的问题


今天启动项目的时候又报上面的错误了,无法找到service服务,无语了。。。,尝试applicationcontext.xml文件中将自动扫描的包具体到service,后正常启动了。

<context:component-scan base-package="xxx.xxx.dcm">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<context:exclude-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
</context:component-scan>

添加下面的base-package正常启动
<context:component-scan base-package="xxx.xxx.dcm.account.service">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
    <context:exclude-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
</context:component-scan>

0 0