关于孔浩老师的CMS项目无法启动问题的解决方案

最近研究孔浩老师的cms项目,将项目导入后,最后使用jetty启动时,发现报IIndexService无法注入的问题,详细错误信息如下:

 1、cms-servlet.xml中
报错语句:<dwr:annotation-scan base-package="org.konghao.cms.dwr" scanDataTransferObject="true"/>
错误信息:Error occured processing XML 'org.springframework.util.ClassUtils.forName(Ljava/lang/String;)Ljava/lang/Class;'.

2、使用jetty启动时,报:
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void org.konghao.cms.controller.BackupController.setIndexService(org.konghao.cms.service.IIndexService); nested exception is java.lang.IllegalArgumentException
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:601)
 at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
 at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:285)
 ... 55 more 

经过与孔老师沟通,确认问题根源是IndexService这个没有注入进去,经过一番思索与尝试,最后终于找到了解决的方案:

1、在cms-parent的pom.xml中,将spring的版本由3.2.2.RELEASE改成3.1.3.RELEASE,完成后如下:

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <spring.version>3.1.3.RELEASE</spring.version>
  </properties>

2、使用clean jetty:run启动即可

当成功启动后,第一个错误也自动得到了解决。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章