[英]Spring Boot on Heroku - H10 “app crash”
我正在尝试将简单的SpringMVC REST API部署到Heroku-我在github上有示例代码。 当我部署到Heroku时,该应用程序不起作用-这是我在Heroku的日志文件中看到的内容:
2016-11-21T00:28:28.965526+00:00 app[web.1]: at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) 2016-11-21T00:28:28.965587+00:00 app[web.1]: at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121) 2016-11-21T00:28:28.965642+00:00 app[web.1]: at org.springframework.boot.context.event.EventPublishingRunListener.started(EventPublishingRunListener.java:63) 2016-11-21T00:28:28.965701+00:00 app[web.1]: at org.springframework.boot.SpringApplicationRunListeners.started(SpringApplicationRunListeners.java:48) 2016-11-21T00:28:28.965762+00:00 app[web.1]: at org.springframework.boot.SpringApplication.run(SpringApplication.java:304) 2016-11-21T00:28:28.965804+00:00 app[web.1]: at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) 2016-11-21T00:28:28.965865+00:00 app[web.1]: at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) 2016-11-21T00:28:28.965926+00:00 app[web.1]: at com.jkerak.TodoApiApplication.main(TodoApiApplication.java:9) 2016-11-21T00:28:28.965989+00:00 app[web.1]: ... 8 more 2016-11-21T00:28:29.096742+00:00 heroku[web.1]: State changed from starting to crashed 2016-11-21T00:28:29.081552+00:00 heroku[web.1]: Process exited with status 1 2016-11-21T00:51:54.625237+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=jkerak-todoapi.herokuapp.com request_id=73c76e69-2084-436f-b829-dd533562d13a fwd="73.30.84.74" dyno= connect= service= status=503 bytes=
我在本地运行该应用程序没有问题。
在哪里可以访问有关Heroku发生了什么问题的更多信息? 我正在使用“ Github部署”管道来部署应用程序。
您发布的日志将被截断(您可以通过运行heroku logs -n 2000 -a youapp
获得更多日志)。 但是在Github上使用代码,我发现了错误:
原因:java.lang.IllegalArgumentException:LoggerFactory不是Logback LoggerContext,但是Logback在类路径上。 删除Logback或竞争的实现(从jar:file:/app/target/todoApi-0.0.1-SNAPSHOT.jar!/BOOT-INF/lib/slf4j-simple-1.7加载的org.slf4j.impl.SimpleLoggerFactory类。 21.jar!/)。 如果您使用的是WebLogic,则需要在WEB-INF / weblogic.xml中的“首选应用程序包”中添加“ org.slf4j”,[org.slf4j.impl.SimpleLoggerFactory]类的对象必须是ch.qos类的实例。 .logback.classic.LoggerContext
因此,您的类路径上有一个错误。 我怀疑这在本地不会发生,因为类路径顺序是不确定的。
尝试从依赖项中删除slf4j-simple-1.7.21
。 您可以通过更改swagger-codegen依赖性来做到这一点:
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen</artifactId>
<version>2.2.1</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
</exclusion>
</exclusions>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.