Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory Bean

http://blog.csdn.net/riyunzhu/article/details/63259718

通过这篇文章的:http://stackoverflow.com/questions/21783391/spring-boot-unable-to-start-embeddedwebapplicationcontext-due-to-missing-embedd?rq=1
看到有个老外说在代码中强制声明一个EmbeddedServletContainerFactory,代码如下:

@Bean  
public EmbeddedServletContainerFactory servletContainer() {  
    TomcatEmbeddedServletContainerFactory factory =   
                  new TomcatEmbeddedServletContainerFactory();  
    return factory;  
 }  

强制声明之后,就报错说jetty所需jdk版本不对,顿时茅塞顿开。因为工程中默认使用的jetty版本是9.3的版本,而这个的jetty版本是需要jdk1.8的,我本机是1.7。问题原因找到了,解决办法也就有了
第一个办法:降低springboot的版本
第二个办法:强制声明jetty的版本为本机jdk适配的,如我本机jdk为1.7,那我强制声明jett的版本为:
[html] view plain copy

你可能感兴趣的:(Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory Bean)