heroku

时间:2018-07-22 22:39:12

标签: spring-boot heroku java-9

我已经创建了一个Spring Boot应用程序,并希望在heroku上运行它。 我的应用是使用Java 9编译的。

当我使用CLI plugin将其部署到heroku时

Exception in thread "main" java.lang.UnsupportedClassVersionError: io/safeblocks/firewall/FirewallApplication has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0

很明显,这意味着Java版本不匹配。我将system.properties文件添加到资源文件夹中,并带有属性java.runtime.version=9 as explained,但是仍然遇到相同的错误。

运行命令heroku run java -version --app myApp时,我得到:

openjdk version "1.8.0_171-heroku"
OpenJDK Runtime Environment (build 1.8.0_171-heroku-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

因此,似乎heroku仍未获取所需的Java版本。 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我看到您将system.properties文件添加到资源文件夹中,我犯了同样的错误。文件system.properties必须放在项目的根文件夹下。

您的文件内容正确: java.runtime.version=9

将文件移动到根文件夹后,提交更改并执行以下操作: git push heroku master

那么一切都很好。