在 Heroku 上部署我的 Spring Boot 项目时出错(目标版本无效)

Posted

技术标签:

【中文标题】在 Heroku 上部署我的 Spring Boot 项目时出错(目标版本无效)【英文标题】:Error deploying my Spring boot project on Heroku (invalid target release) 【发布时间】:2020-12-27 12:30:28 【问题描述】:

// Pom.xml 文件

4.0.0 org.springframework.boot spring-boot-starter-parent 2.3.3.发布 com.SpringBootJava项目 学习计划 0.0.1-快照 学习计划 Spring Boot 演示项目

<properties>
    <java.version>14</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-mongodb</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            </plugin>

        <plugin>
            <groupId>com.heroku.sdk</groupId>
            <artifactId>heroku-maven-plugin</artifactId>
            <version>3.0.3</version>
        </plugin>
    </plugins>


</build>

// 错误说明 [错误] 无法执行目标 org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project LearningProject:致命错误编译:无效目标版本:14 -> [帮助 1]

【问题讨论】:

【参考方案1】:

Heroku 默认使用 OpenJDK 8。

更改为使用 Java 8 或在 system.properties 文件(位于项目的根目录)中设置所需的 Java 版本,该文件应包含:

java.runtime.version=14

【讨论】:

是的,我错过了,我后来才知道的。

以上是关于在 Heroku 上部署我的 Spring Boot 项目时出错(目标版本无效)的主要内容,如果未能解决你的问题,请参考以下文章

使用 nginx 作为代理的 Spring Boot 应用程序部署在 Heroku 上

在 Heroku 中部署我的 Gradle (Spring Boot) 应用程序

带有 Maven 应用程序的 Spring Boot 的 Heroku jar 部署,代码 = H10

Spring Boot + Angular 2 Heroku 部署

Heroku H14(没有运行 Web 进程)+ Spring-boot

Heroku 无法部署 Java 11 Spring Boot App [重复]