我尝试在Heroku上部署我的Sping Boot 应用程序。我将github连接到Heroku并为应用程序创建clearDB。当部署成功后,我转到应用程序。但在Heroku的日志中显示2020-02-24T20:00:33.959429+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=POST path="/auth/signin" host=linkedin-search.herokuapp.com request_id=52208cc6-575e-444b-bb45-c3910d49b175 fwd="134.249.164.109" dyno= connect= service= status=503 bytes= protocol=https
我的Procfile包含:web: java -jar target/Linkedin_Search-0.0.1-SNAPSHOT.jar
我的pom.xml构建部分是:
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<testSourceDirectory>src/test/java</testSourceDirectory>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.2.2.RELEASE</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>11</source>
<target>11</target>
<release>11</release>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals><goal>copy-dependencies</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
字符串
我在Heroku开发中心的教程中做了所有的事情,但没有任何效果。
3条答案
按热度按时间lb3vh1jj1#
根据您的日志,这是问题的根本原因:
2020-02- 27 T13:58:45.159924+00:00应用程序[web.1]:没有主清单属性,在target/Linkedin_Search-0.0.1-SNAPSHOT.jar
您创建的插件文件没有在其manifest中指定Main类。如何修复这个问题实际上取决于您的构建设置。我看到您使用的是
spring-boot-maven-plugin
,它通常会为您检测和设置该属性。您可以尝试在插件配置部分显式配置它:字符串
您也可以在
Procfile
中显式指定主类:型
eqqqjvef2#
对于任何有类似问题的人,我发现使用
heroku/java buildpack
并在根目录中创建system.properties
文件并在其中指定java运行时版本解决了我的问题:java.runtime.version=17
wkyowqbh3#
我建议你在GitHub上推送你的应用程序,然后使用heroku的自动部署。这更容易。对我来说总是很好。