我发表了以下评论:

./gradlew app:installDebug

只是遇到了日志:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '11.0.2'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

我的gradle版本是5.1.1:

------------------------------------------------------------
Gradle 5.1.1
------------------------------------------------------------

Build time:   2019-01-10 23:05:02 UTC
Revision:     3c9abb645fb83932c44e8610642393ad62116807

Kotlin DSL:   1.1.1
Kotlin:       1.3.11
Groovy:       2.5.4
Ant:          Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM:          11.0.2 (Oracle Corporation 11.0.2+9-LTS)
OS:           Mac OS X 10.13.6 x86_64

我不知道如何继续(我尝试过升级/降级,但到目前为止都没有工作)。

更新:当我运行。/gradlew——版本,我得到以下:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '11.0.2'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

我的…/ gradle /包装/ gradle-wrapper。properties包含以下内容,包括distributionUrl=…/gradle-4.1-rc-1-all.zip:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-rc-1-all.zip

当前回答

Tl;dr:运行update-alternatives来降级Java


我的系统gradle版本是4.4.1,gradle包装器版本是4.0。在运行其他几个答案给出的命令后:

gradle wrapper --gradle-version 4.4.1

我还是犯了同样的错误:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine java version from '11.0.4'.

原来直到gradle 4.8才支持java 11,而我的软件库只有4.4.1。(此外,升级到较新的gradle版本可能与我试图编译的包不兼容。)

答案是降级java。我的系统实际上已经安装了java8,通过运行这个命令并按照说明在java版本之间切换很容易:

sudo update-alternatives --config java

其他回答

因为你的包装器版本不支持11+,你可以做一个简单的技巧来欺骗新版本的InteliJ。

  press3x Shift -> type "Switch Boot JDK" -> and change for java 8. 

或者如果你想使用java 11+,你只需将包装器版本更新到4.8+

更新gradle /包装/ gradle-wrapper。属性与以下版本修复它为我:

distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

对于快速和肮脏的测试来说,最简单的方法就是使用覆盖,例如:

> JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/ ./gradlew build

由于包装器检查JAVA_HOME,您可以在每次运行时选择您想要的任何JAVA_HOME。

我也遇到过类似的问题:我的默认gradle包装器是版本4。在Gradle 5中添加了对更高版本Java的支持。

我已经更新了我的gradlew描述在这里:https://docs.gradle.org/current/userguide/gradle_wrapper.html#sec:upgrading_wrapper

TLTD:

./gradlew wrapper --gradle-version 5.6.2

导航到Project/gradle/wrapper/gradle-wrapper。属性,并手动更改distributionUrl为distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-bin.zip,它工作了,希望这有助于某人。