我正尝试将Java应用程序部署到针对OpenJDK 11的Heroku。我已根据Heroku instructions将system.properties
文件添加到应用程序的根目录中,具有以下内容:
java.runtime.version=11
但是,当我部署时,出现以下Gradle错误:
Gradle app detected
-----> Installing JDK 1.8... done
-----> Building Gradle app...
-----> executing ./gradlew jar
Downloading https://services.gradle.org/distributions/gradle-4.10-all.zip
Welcome to Gradle 4.10!
[Gradle highlights]
> Task :compileJava FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Could not target platform: 'Java SE 11' using tool chain: 'JDK 8 (1.8)'.
如何让Heroku检测并使用正确的Java版本?
答案 0 :(得分:1)
Gradle直到private headers(于2018年11月26日发布)才正式支持JDK 11。升级到该版本或更高版本应该可以解决该问题。
另请参阅version 5.0有关Java 9的支持。