我试图通过github在heroku上部署我的Spring Boot应用程序(JDK 15.0.1),但是我收到了错误消息
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project conference-demo: Fatal error compiling: invalid target release: 15 -> [Help 1]
我已经将一个名为www.example.com的文件添加system.properties到我的应用程序资源文件夹中,该文件包含以下内容
java.runtime.version =15
这是pom
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.2</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.myPackage</groupId>
<artifactId>conference-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>myApp</name>
<description>Something</description>
<properties>
<java.version>15</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
<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>
</plugin>
</plugins>
</build>
</project>
但是heroku似乎仍然在尝试使用Java1.8进行部署。
-----> Building on the Heroku-20 stack
-----> Java app detected
-----> Installing JDK 1.8... done
我是不是漏掉了什么?
3条答案
按热度按时间2uluyalo1#
在你的
pom.xml
中添加你自己的上下文,如下所示。在声明依赖关系之后,在根元素结束之前将此代码粘贴到effective POM
中,并根据你的要求调整版本。0lvr5msh2#
我在Heroku上部署时也遇到了同样的问题,我通过在项目的根文件夹中创建一个system.properties文件来解决这个问题,该文件包含以下内容:
java.runtime.version=15
版本应与pom.xml中的java版本相同
bvk5enib3#
对于基于***Gradle***的项目:以下是几个步骤:
1.请按
ctrl+alt+s
并验证项目SDK版本1.转到项目的根目录,其中存在build.gradle和setting.gradle文件
1.在此处创建一个名为system.properties的新文件(检测此文件用于部署Heroku应用程序以覆盖默认属性)
1.在这个新创建的文件中写入这一行
java.runtime.version=17.0.5
或您想要部署的任何jdk版本。1.使用
add.
' 'commit
'和git push heroku master
更新此文件的存储库,仅此而已:)