【问题标题】:Spring Boot Shutting Down After Adding JPA添加 JPA 后 Spring Boot 关闭
【发布时间】:2017-08-26 15:16:55
【问题描述】:

我有一个 spring boot 1.5.2.RELEASE 项目,它非常简单,只有几个 Rest Services。 当我添加 spring-boot-starter-data-jpa - 突然之间,服务器不会保持活动状态 例如,我添加了这些日志(注意 - 我已经注释掉了数据源的配置,这仍然会发生 - 启动后 tomcat 关闭)

2017-04-01 12:10:25 <> DEBUG logging:19 - Logging Provider: org.jboss.logging.Log4jLoggerProvider
2017-04-01 12:10:25 <> INFO  Version:30 - HV000001: Hibernate Validator 5.3.4.Final
2017-04-01 12:10:25 <> DEBUG DefaultTraversableResolver:103 - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
2017-04-01 12:10:25 <> DEBUG DefaultTraversableResolver:114 - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:103 - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:114 - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:103 - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:114 - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:163 - Setting custom MessageInterpolator of type org.springframework.validation.beanvalidation.LocaleContextMessageInterpolator
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:185 - Setting custom ConstraintValidatorFactory of type org.springframework.validation.beanvalidation.SpringConstraintValidatorFactory
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:199 - Setting custom ParameterNameProvider of type com.sun.proxy.$Proxy44
2017-04-01 12:10:26 <> DEBUG ValidationXmlParser:91 - Trying to load META-INF/validation.xml for XML based Validator configuration.
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:47 - Trying to load META-INF/validation.xml via user class loader
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:54 - Trying to load META-INF/validation.xml via TCCL
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:60 - Trying to load META-INF/validation.xml via Hibernate Validator's class loader
2017-04-01 12:10:26 <> DEBUG ValidationXmlParser:98 - No META-INF/validation.xml found. Using annotation based configuration only.
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:103 - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:114 - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:103 - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
2017-04-01 12:10:26 <> DEBUG DefaultTraversableResolver:114 - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:163 - Setting custom MessageInterpolator of type org.springframework.validation.beanvalidation.LocaleContextMessageInterpolator
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:185 - Setting custom ConstraintValidatorFactory of type org.springframework.validation.beanvalidation.SpringConstraintValidatorFactory
2017-04-01 12:10:26 <> DEBUG ConfigurationImpl:199 - Setting custom ParameterNameProvider of type com.sun.proxy.$Proxy44
2017-04-01 12:10:26 <> DEBUG ValidationXmlParser:91 - Trying to load META-INF/validation.xml for XML based Validator configuration.
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:47 - Trying to load META-INF/validation.xml via user class loader
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:54 - Trying to load META-INF/validation.xml via TCCL
2017-04-01 12:10:26 <> DEBUG ResourceLoaderHelper:60 - Trying to load META-INF/validation.xml via Hibernate Validator's class loader
2017-04-01 12:10:26 <> DEBUG ValidationXmlParser:98 - No META-INF/validation.xml found. Using annotation based configuration only.
Apr 01, 2017 12:10:27 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Tomcat
Apr 01, 2017 12:10:27 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/8.5.11
Apr 01, 2017 12:10:27 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring embedded WebApplicationContext
Apr 01, 2017 12:10:27 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Tomcat

谁能提供我如何阻止这种行为的任何见解? 此处提供完整的 loggign 输出 - https://pastebin.com/3yqkex6i 谢谢 达米安

【问题讨论】:

  • 你能添加更多日志吗?我认为您需要将数据库客户端添加到您的 pom 并使用默认值运行数据库(如果您想要最少的配置)。
  • 我添加了 mysql 连接器并将相关配置添加到我的 application.properties
  • 你能提供更多的日志记录吗?
  • 添加于pastebin.com/3yqkex6i - 我注意到它现在正在使用 jboss 日志记录〜(因为我正在使用 spring-boot-starter-data-jpa。我尝试排除 jboss 日志记录但它无法启动完全

标签: java spring tomcat spring-boot spring-data-jpa


【解决方案1】:

如果未在 AWS Batch 作业定义中设置配置文件,则会显示此错误。 profile 应根据批处理作业定义的“环境变量”部分中的环境设置设置为“prd”或“stg”。

【讨论】:

    【解决方案2】:

    这是一个应用程序错误 我在 Amazon lambda 上部署我的应用程序,需要使用 log4j2

    因此我的 pom 中有以下内容

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    

    通过删除排除 - 它向我展示了应用程序错误是什么,然后我能够快速解决它(该死的 log4j2 :))

    【讨论】:

    • 很高兴您能够修复它。顺便说一句,非常高兴您尝试了 Amazon Lambda。 spring boot 是否与 amazon lambda 一起正常工作?你的经历是什么?
    • 抱歉耽搁了。弹簧靴效果很好。初始化可能很慢,并且可以尝试重新初始化的问题,但它工作得非常好。很高兴在 Lambda 中拥有弹簧的所有力量。通过使用无服务器进行部署,我发现它非常轻松
    猜你喜欢
    • 2021-02-09
    • 2017-05-29
    • 2020-05-17
    • 1970-01-01
    • 2018-09-30
    • 1970-01-01
    • 2015-12-28
    • 1970-01-01
    • 2019-03-14
    相关资源
    最近更新 更多