【发布时间】:2018-09-29 17:49:58
【问题描述】:
我的 Spring Boot Web 应用程序在启动时立即停止,没有任何错误消息:
:: Spring Boot :: (v2.0.1.RELEASE)
2018-04-19 17:15:34.009 INFO 5600 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2018-04-19 17:15:34.013 INFO 5600 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.29
2018-04-19 17:15:34.027 INFO 5600 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/Users/whf/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.]
2018-04-19 17:15:34.129 INFO 5600 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2018-04-19 17:15:34.514 INFO 5600 --- [ main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
当我删除 spring-boot-starter-test 依赖项时,问题就消失了。这是我的pom.xml:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.0.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.hyperledger.fabric-sdk-java</groupId>
<artifactId>fabric-sdk-java</artifactId>
<version>1.1.0-alpha</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
</dependency>
<!-- remove this dependency can fix this problem -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
我不知道这里发生了什么......
-----更新-----
将 spring boot 版本更改为 1.5.x 解决了这个问题。是不是spring boot 2.0.1的bug?
---------更新-------
似乎有些东西阻止了日志打印到控制台。
【问题讨论】:
-
我遇到了完全相同的问题。我把它缩小了一点。它似乎与 spring-boot-starter-test 中的 spring-core 依赖关系有关。如果我使用以下内容,它也会让我解决问题:
org.springframework.boot spring-boot-starter-test test org.springframework spring-core -
@beldenge 尝试了您的解决方案,有效!你应该在这里发布这个作为答案。
-
@beldenge 知道这个问题的确切原因吗?
-
不,我不确定确切的问题是什么,但我相信这是 Spring Boot 中的一个错误,它与依赖项在 spring-boot-starter-test pom 中的结构和/或范围有关。如果我能解决它,我计划为它提交一个 Jira。
标签: spring-boot spring-boot-starter