由于缺少bean,Webserver无法启动

我正在尝试启动一个简单的spring应用程序

我在这里有main.java文件:

package main; import javafx.application.Application; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.context.annotation.ComponentScan; @ComponentScan @EnableAutoConfiguration public class Main { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 

这是我的libs: 在此处输入图像描述

这是pom.xml:

   4.0.0 blog blog 1.0-SNAPSHOT   org.springframework spring-web 4.0.0.RELEASE   org.springframework.boot spring-boot-autoconfigure 1.0.0.BUILD-SNAPSHOT   org.springframework.boot spring-boot 1.0.0.BUILD-SNAPSHOT    

最后错误就是这个:

  . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.0.0.BUILD-SNAPSHOT) [2014-02-15 11:14:25.385] - 6116 INFO [main] --- main.Main: Starting Main on Vlad-PC with PID 6116 (C:\Users\Vlad\IdeaProjects\blog\target\classes started by Vlad) [2014-02-15 11:14:25.473] - 6116 INFO [main] --- org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext: Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@2ca76650: startup date [Sat Feb 15 11:14:25 GMT 2014]; root of context hierarchy [2014-02-15 11:14:25.579] - 6116 INFO [main] --- org.springframework.boot.logging.ClasspathLoggingApplicationListener: Application failed to start with classpath: [file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/charsets.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/deploy.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/javaws.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/jce.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/jfr.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/jfxrt.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/jsse.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/management-agent.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/plugin.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/resources.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/rt.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/access-bridge-64.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/dnsns.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/jaccess.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/localedata.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/sunec.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/sunjce_provider.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/sunmscapi.jar, file:/C:/Program%20Files/Java/jdk1.7.0_51/jre/lib/ext/zipfs.jar, file:/C:/Users/Vlad/IdeaProjects/blog/target/classes/, file:/C:/Users/Vlad/IdeaProjects/blog/lib/com.springsource.org.apache.tomcat.api-7.0.12.jar, file:/C:/Users/Vlad/IdeaProjects/blog/lib/javax.servlet-3.0.0.v201103241009.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-web/4.0.0.RELEASE/spring-web-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-aop/4.0.0.RELEASE/spring-aop-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-beans/4.0.0.RELEASE/spring-beans-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-core/4.0.0.RELEASE/spring-core-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-context/4.0.0.RELEASE/spring-context-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/spring-expression/4.0.0.RELEASE/spring-expression-4.0.0.RELEASE.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.0.0.BUILD-SNAPSHOT/spring-boot-autoconfigure-1.0.0.BUILD-SNAPSHOT.jar, file:/C:/Users/Vlad/.m2/repository/org/springframework/boot/spring-boot/1.0.0.BUILD-SNAPSHOT/spring-boot-1.0.0.BUILD-SNAPSHOT.jar, file:/C:/Program%20Files%20(x86)/JetBrains/IntelliJ%20IDEA%20Community%20Edition%2013.0.2/lib/idea_rt.jar] Exception in thread "main" org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:136) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:476) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:120) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:616) at org.springframework.boot.SpringApplication.run(SpringApplication.java:306) at org.springframework.boot.SpringApplication.run(SpringApplication.java:877) at org.springframework.boot.SpringApplication.run(SpringApplication.java:866) at main.Main.main(Main.java:14) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) Caused by: org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean. at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.getEmbeddedServletContainerFactory(EmbeddedWebApplicationContext.java:186) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:159) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:133) ... 12 more 

据我所知,我错过了一个豆子? 然而,看起来我确实有jar春豆。

Spring启动尝试启动Web服务器,但没有在类路径中找到任何内容。 尝试添加此依赖项

   org.springframework.boot spring-boot-starter-web I Dont know  

顺便说一句,你看起来不像典型的春季靴子! 将其与http://projects.spring.io/spring-boot/docs/README.html进行比较

你需要添加注释:

 @SpringBootApplication public class Main { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 

我现在遇到了同样的错误,我通过在build.gradle文件中包含相同版本的Spring包解决了这个问题:

 buildscript { ext { springBootVersion = '1.1.6.RELEASE' } compile 'org.springframework.boot:spring-boot-starter-web' compile 'org.springframework.boot:spring-boot-starter-tomcat' compile 'org.springframework.boot:spring-boot-starter-security' compile 'org.springframework.boot:spring-boot-starter-actuator' compile 'org.springframework.boot:spring-boot-starter-aop' compile 'org.springframework.boot:spring-boot-starter-data-mongodb' 

例如,如果您更改了其中一个软件包并添加了版本号以覆盖静态值1.1.6.RELEASE,则会显示错误:

 buildscript { ext { springBootVersion = '1.1.6.RELEASE' } compile 'org.springframework.boot:spring-boot-starter-web' compile 'org.springframework.boot:spring-boot-starter-tomcat' compile 'org.springframework.boot:spring-boot-starter-security' compile 'org.springframework.boot:spring-boot-starter-actuator' compile 'org.springframework.boot:spring-boot-starter-aop' compile 'org.springframework.boot:spring-boot-starter-data-mongodb:1.2.5.RELEASE' 

根据版本的不同,有所不同。

org.springframework – >请更正为更高版本。 🙂

  org.springframework.boot spring-boot-starter-parent 1.2.3.RELEASE    org.springframework.boot spring-boot-starter-web   org.springframework spring-core 4.1.5.RELEASE   

例如,一个org.springframework.boot 1.2.3.RELEASE,错误始终是org.springframework 4.1.4.RELEASE下面的版本。

在超过org.springframework 4.1.5.RELEASE的情况下,我没有错误地工作。

http://projects.spring.io/spring-boot/

我可能迟到了派对,但我可能只是为了寻找解决方案而节省了几个小时的痛苦。我在设置spring-boot项目时遇到了同样的问题。

我在build.gradle中有这个

 compile group: 'org.springframework.boot', name: 'spring-boot-starter- web', version: '1.5.9.RELEASE' //compile group: 'org.springframework', name: 'spring-context', version: '5.0.2.RELEASE'// <--- Source of my problems compile group: 'org.springframework.security.oauth', name: 'spring- security-oauth2', version: '2.2.1.RELEASE' compile group: 'com.fasterxml.jackson.datatype', name: 'jackson- datatype-jsr310', version: '2.9.3' testCompile group: 'com.h2database', name: 'h2', version: '1.4.196' compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.6' compile group: 'org.hibernate', name: 'hibernate-core', version: '5.2.12.Final' compile group: 'commons-io', name: 'commons-io', version: '2.6' compile group: 'com.google.guava', name: 'guava', version: '23.6-jre' compile group: 'org.springframework.boot', name: 'spring-boot-starter- data-jpa', version: '1.5.9.RELEASE' testCompile group: 'junit', name: 'junit', version: '4.12' testCompile group: 'org.springframework.boot', name: 'spring-boot- starter-test', version: '1.5.9.RELEASE' 

这是一个spring-boot项目,所以它会为你做很多配置

也就是说,如果它是一个弹簧项目,你不需要一些你必须要放的依赖项。 引导启动程序依赖性就足够了。