Spring Boot-嵌入式Tomcat

放聪明点

我有一个Springboot应用程序,希望与嵌入式tomcat容器一起运行。

我在Debian系统上使用它(在Mac上一切正常)。我正在使用tomcat 8.0.29。Tomcat运行正常。当我启动应用程序时,出现此异常。这不是完整的堆栈跟踪,在这部分之后,全部都是关于自动连接所有可能的事情的异常。

2016-03-21 13:42:21.573 INFO  [main]: Starting Servlet Engine: Apache Tomcat/8.0.32
2016-03-21 13:42:24.329 INFO  [localhost-startStop-1]: Initializing Spring embedded WebApplicationContext
2016-03-21 13:42:59.223 ERROR [localhost-startStop-1]: Error starting Tomcat context: org.springframework.beans.factory.BeanCreationException
2016-03-21 13:43:03.472 INFO  [localhost-startStop-1]: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [127] milliseconds.
2016-03-21 13:43:03.593 WARN  [main]: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat
2016-03-21 13:43:03.838 ERROR [main]: Application startup failed
org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:133)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:532)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:766)
    at org.springframework.boot.SpringApplication.createAndRefreshContext(SpringApplication.java:361)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1191)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1180)
    at it.besmart.parkserver.StartServer.main(StartServer.java:19)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:54)
    at java.lang.Thread.run(Thread.java:744)
Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.initialize(TomcatEmbeddedServletContainer.java:99)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.<init>(TomcatEmbeddedServletContainer.java:76)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getTomcatEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:457)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:168)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:160)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:130)
    ... 14 more

完整的POM.xml

<?xml version="1.0" encoding="UTF-8"?>
<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>it.besmart</groupId>
    <artifactId>eparkserver</artifactId>
    <version>1.0.0</version>
    <packaging>jar</packaging>

    <name>eparkserver</name>
    <description>ePark server</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.3.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
        <start-class>it.besmart.parkserver.StartServer</start-class>

    </properties>
    <dependencies>
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>

        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
             <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

    <dependency>
            <groupId>com.pi4j</groupId>
            <artifactId>pi4j-core</artifactId>
            <version>1.0</version>
        </dependency>

            <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <executable>true</executable>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <id>server-copy</id>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <phase>package</phase>
                        <configuration>
                            <target>
                                <echo message="Push to server/home/pi/park/" />
                                <scp trust="yes" todir="pi:[email protected]:/home/pi/park/">
                                    <fileset dir="${basedir}/target">
                                    </fileset>
                                </scp>
                            </target>
                        </configuration>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.ant</groupId>
                        <artifactId>ant-jsch</artifactId>
                        <version>1.8.2</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>
</project>

这是应用程序类

@SpringBootApplication
@ComponentScan("it.besmart")
public class StartServer extends SpringBootServletInitializer{


    public static void main(String[] args){


        SpringApplication.run(StartServer.class, args);


    }

     @Override
         protected final SpringApplicationBuilder configure(final SpringApplicationBuilder application) {
             return application.sources(StartServer.class);
     }

}

哪个可能是问题?

卡卡西哈卡特

将此添加到您的pom.xml

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

和重构StartServer并删除此@ComponentScan("it.besmart"),因为@SpringBootApplication还提供别名定制的属性@EnableAutoConfiguration@ComponentScan

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Spring Boot Jetty / tomcat嵌入式访问日志配置

来自分类Dev

从Spring Boot的嵌入式Tomcat提供日志文件

来自分类Dev

Spring Boot Jetty / tomcat嵌入式访问日志配置

来自分类Dev

Spring Boot + GWT嵌入式配置

来自分类Dev

对Tomcat Boot的Spring Boot RestController的REST调用在Tomcat中产生404,但在嵌入式Tomcat中工作

来自分类Dev

如何使用嵌入式tomcat会话集群设置Spring Boot应用程序?

来自分类Dev

如何在Spring Boot中设置嵌入式tomcat的日志记录级别?

来自分类常见问题

在Linux的嵌入式Tomcat服务器中运行Spring Boot应用程序

来自分类Dev

如何使用嵌入式Tomcat 8和Spring Boot将子域转换为路径

来自分类Dev

在Apache代理后面具有嵌入式Tomcat的Spring Boot

来自分类Dev

使用Spring-Boot和嵌入式Tomcat禁用SSLv3

来自分类Dev

您如何告诉Spring Boot将嵌入式Tomcat的访问日志发送到stdout?

来自分类Dev

Spring Boot Web应用程序中的嵌入式Tomcat并非以module-info开头

来自分类Dev

Spring Boot-替换默认的嵌入式Tomcat连接器

来自分类Dev

使用Spring Boot和嵌入式Tomcat启用会话持久性

来自分类Dev

嵌入式Tomcat中具有JSP标签库的Spring-Boot

来自分类Dev

首次测试嵌入式tomcat是否工作时,Spring Boot引发错误

来自分类Dev

使用Spring Boot在嵌入式Tomcat服务器上部署资源

来自分类Dev

与 SpringBootTest 一起使用时,Spring Boot 嵌入式 Tomcat 无法启动

来自分类Dev

Spring Boot 1.4.1 嵌入式 tomcat 8 - 日志缓冲 30 秒

来自分类Dev

Netbeans 8.2:如何在 osx 上的 Spring.Boot 项目中停止嵌入式 Tomcat?

来自分类Dev

无法使用嵌入式 Tomcat 浏览到 Spring Boot 应用程序

来自分类Dev

带有嵌入式 tomcat 的 Spring Boot 在端口上运行,但无法正常工作

来自分类Dev

Spring Boot项目发布到生产环境是选择war(独立的tomcat)还是jar(嵌入式tomcat)?

来自分类Dev

我可以为Spring Boot的嵌入式tomcat启用tomcat管理器应用程序吗?

来自分类Dev

如何使用嵌入式Tomcat将JNDI数据库连接与Spring Boot和Spring Data结合使用?

来自分类Dev

Spring 4 +嵌入式Tomcat 7

来自分类Dev

如何在Spring Boot应用程序中将用户添加到嵌入式tomcat?

来自分类Dev

如何在带有嵌入式tomcat的Spring Boot应用程序中运行hawt.io

Related 相关文章

  1. 1

    Spring Boot Jetty / tomcat嵌入式访问日志配置

  2. 2

    从Spring Boot的嵌入式Tomcat提供日志文件

  3. 3

    Spring Boot Jetty / tomcat嵌入式访问日志配置

  4. 4

    Spring Boot + GWT嵌入式配置

  5. 5

    对Tomcat Boot的Spring Boot RestController的REST调用在Tomcat中产生404,但在嵌入式Tomcat中工作

  6. 6

    如何使用嵌入式tomcat会话集群设置Spring Boot应用程序?

  7. 7

    如何在Spring Boot中设置嵌入式tomcat的日志记录级别?

  8. 8

    在Linux的嵌入式Tomcat服务器中运行Spring Boot应用程序

  9. 9

    如何使用嵌入式Tomcat 8和Spring Boot将子域转换为路径

  10. 10

    在Apache代理后面具有嵌入式Tomcat的Spring Boot

  11. 11

    使用Spring-Boot和嵌入式Tomcat禁用SSLv3

  12. 12

    您如何告诉Spring Boot将嵌入式Tomcat的访问日志发送到stdout?

  13. 13

    Spring Boot Web应用程序中的嵌入式Tomcat并非以module-info开头

  14. 14

    Spring Boot-替换默认的嵌入式Tomcat连接器

  15. 15

    使用Spring Boot和嵌入式Tomcat启用会话持久性

  16. 16

    嵌入式Tomcat中具有JSP标签库的Spring-Boot

  17. 17

    首次测试嵌入式tomcat是否工作时,Spring Boot引发错误

  18. 18

    使用Spring Boot在嵌入式Tomcat服务器上部署资源

  19. 19

    与 SpringBootTest 一起使用时,Spring Boot 嵌入式 Tomcat 无法启动

  20. 20

    Spring Boot 1.4.1 嵌入式 tomcat 8 - 日志缓冲 30 秒

  21. 21

    Netbeans 8.2:如何在 osx 上的 Spring.Boot 项目中停止嵌入式 Tomcat?

  22. 22

    无法使用嵌入式 Tomcat 浏览到 Spring Boot 应用程序

  23. 23

    带有嵌入式 tomcat 的 Spring Boot 在端口上运行,但无法正常工作

  24. 24

    Spring Boot项目发布到生产环境是选择war(独立的tomcat)还是jar(嵌入式tomcat)?

  25. 25

    我可以为Spring Boot的嵌入式tomcat启用tomcat管理器应用程序吗?

  26. 26

    如何使用嵌入式Tomcat将JNDI数据库连接与Spring Boot和Spring Data结合使用?

  27. 27

    Spring 4 +嵌入式Tomcat 7

  28. 28

    如何在Spring Boot应用程序中将用户添加到嵌入式tomcat?

  29. 29

    如何在带有嵌入式tomcat的Spring Boot应用程序中运行hawt.io

热门标签

归档