导入项目启动报错Unexpectedexception parsing XML document from file[H:\software\apache-tomcat-7.0.77\webapps\


 

          导入项目启动报错Unexpectedexception parsing XML document from file[H:\software\apache-tomcat-7.0.77\webapps\ItcastOA\WEB-INF\classes\applicationContext.xml]


 

  

 背景介绍:

导入项目报错1:

ERROR ContextLoader:215 - Contextinitialization failed

 

报错2:

Initializing Spring rootWebApplicationContext

 

报错3:

Unexpectedexception parsing XML document from file[H:\software\apache-tomcat-7.0.77\webapps\ItcastOA\WEB-INF\classes\applicationContext.xml];


 

报错4:

nested exception isjava.lang.IllegalStateException: Context namespace element 'component-scan' andits parser class[org.springframework.context.annotation.ComponentScanBeanDefinitionParser] areonly available on JDK 1.5 and higher

 

思路分析:

     1,开发软件的配置问题:

      将软件中tomcat配置,jdk 配置重新检查了一遍,重新启动,还是报同样的错误,之后将所有的配置删除了,重新配置一下,结果还是如此。



    2,开发工具问题:

     将同一项目导入到不论是Eclipse还是MyEclipse,都是报同样的错误。

后来找同事交流,他给了我一个非常非常奇妙的思路,在开发工具中启动tomcat,一直报错:

Unexpected exception parsing XML document from file[H:\software\apache-tomcat-7.0.77\webapps\ItcastOA\WEB-INF\classes\applicationContext.xml];


      这个错误,但是,打开tomcat根目录,只启动tomcat:startup.bat之后,项目竟然起来了,而且是可以访问的,顿时就是非常的开森,这可以说明,其实跟开发工具是没有关系的,继续往下看bug 日志进行分析:

 

3,Spring启动说明版本不支持,要么提升spring.jar

 

4,要么改jdk,spring版本低,不支持jdk1.8, 所以讲jdk改成了1.7


  

 

报错5:

Failed to initialize end point associatedwith ProtocolHandler ["http-apr-8081"]


原因:8081已经被占用


解决:(1)将占用的8081端口线程关闭


           (2)更改tomcat中server.xml中端口号比如改成:8082 



 

总结: 

          很低级的一个也是很难发现的一个错误,因为我之前一直用的JDK1.8版本,spring中的springframework.context是不支持的,所以要改成支持的版本,那就是1.7即以下的。改了JDK之后,问题就轻松解决了,在这里进行总结一下,和大家一起分享一下:一是为了提醒自己;二是感谢同事的帮忙,帮我开拓了一种解决问题的思路,后面解决起来就快的多了,这问题让我一样困扰一下午,后来瞬间就开拓了思路。


     遇到问题其实并不要紧,好好的分析一下,特别值得注意的是: 去阅读报错的日志,哎呀,可有意思,每当一次次的将bug解决时,宝藏露出水面时,心情就是一个字:


 

 

参考附录:


 

 








你可能感兴趣的:($【Java】,$【基础积累】)