当我明确告诉它时,为什么 Heroku 不能识别正确的 Java 版本?

Why isn't Heroku recognising the correct Java version when I've told it explicitly?

git push heroku master 我的 spring-maven-java 项目上,Heroku cli 识别它是一个 Java 项目并尝试构建它。它打印它正在安装 JDK 1.8 并且在终端输出很多之后它说 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) on project myProject: Fatal error compiling: invalid target release: 10.0.2

maven-compiler-plugin 配置源和目标明确标识 Java 10.0.2 指定为 Heroku 文档可接受的,并且 java.runtime.version=10.0.2application.propertiessystem.properties

我想我需要让 Heroku 在开始时安装正确的 JDK。如何让 Heroku 获取和使用 Java 10?

看看我尝试修改的程度 maven-compiler-plugin:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>10.0.2</source>
        <target>10.0.2</target>
        <release>10.0.2</release>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.ow2.asm</groupId>
            <artifactId>asm</artifactId>
            <version>6.2</version>
        </dependency>
    </dependencies>
</plugin>

在您的应用程序的根目录中创建一个 system.properties 文件,并将以下内容放入其中:

java.runtime.version=10.0.2

将其提交给 Git 并再次推送。有关详细信息,请参阅 Heroku'd Dev Center