无法启动嵌入式容器,创建Bean时出错

时间:2019-10-05 12:50:38

标签: java spring-boot

我正在尝试运行此基本应用程序,但出现了很多错误。整个目的是能够输入“ http://localhost:8080/ui”。

我在下面添加了整个代码。

XML

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.kamil.vaadin</groupId>
  <artifactId>vaadin-app</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <properties>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
    <java.version>12.0</java.version>
  </properties>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.5.RELEASE</version>
  </parent>  
  <dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <version>1.3.5.RELEASE</version><!--$NO-MVN-MAN-VER$-->
        <scope>provided</scope>
        </dependency>
    <dependency>
        <groupId>com.vaadin</groupId>
        <artifactId>vaadin-spring-boot-starter</artifactId>
        <version>1.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>
</project>

MainView.java看起来像

    @SpringUI(path = "/ui")
    @Title("First Vaadin Web Application Page")
    public class MainView extends UI{

        @Override
        protected void init(VaadinRequest request) {
            final VerticalLayout verticalLayout = new VerticalLayout();
            verticalLayout.addComponent(new com.vaadin.ui.Label("Welcome to Vaadin!!!"));
            setContent(verticalLayout);
        }

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

我的主班

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

日志

  

[错误]无法执行目标
  org.springframework.boot:spring-boot- maven-plugin:1.3.5.RELEASE:run   
项目vaadin-app上的(default-cli):发生异常   运行。
null:InvocationTargetException:无法启动   嵌入式容器嵌套异常为   org.springframework.beans.factory.BeanCreationException:
错误   创建名称为“ tomcatEmbeddedServletContainerFactory”的bean   在类路径资源中定义   
[org / springframework / boot / autoconfigure / web / EmbeddedServletContainerAutoConfiguration $ EmbeddedTomcat.class]:   Bean初始化失败;嵌套的
例外是   org.springframework.beans.factory.BeanCreationException:错误   创建名称为
的bean   'org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration':   
自动连接的依赖项注入失败;嵌套异常为   org.springframework.beans.factory.BeanCreationException:无法   自动连线栏位:私人   org.springframework.boot.autoconfigure.web.ServerProperties   org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration.properties;   嵌套异常是
  org.springframework.beans.factory.BeanCreationException:错误   创建名称为“ serverPropertie enter code here s”的bean   类路径资源   [org / springframework / boot / autoconfigure / web / ServerPropertiesAutoConfiguration.class]:   Bean初始化失败;嵌套异常是
  java.lang.NoClassDefFoundError:javax / xml / bind / ValidationException:   javax.xml.bind.ValidationException-> [帮助1]

0 个答案:

没有答案