關於孔浩老師的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啓動即可

當成功啓動後,第一個錯誤也自動得到了解決。

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