使用Gradle提供的javaHome的构建必须是有效的目录

使用Gradle提供的javaHome的构建必须是有效的目录,java,gradle,Java,Gradle,我有很多麻烦,因为这应该是一项简单的任务。我正试图在课程开始之前,用Gradle为我的一门课程构建一个简单的Java项目(只是Hello World)。我克隆了存储库,下载了所有相关软件,并在命令行上尝试了gradlebuild。我发现错误提供的javaHome必须是有效的目录。您提供了:C:\Program Files\AdoptOpenJDK\jre-8.0.282.8-hotspot。显示的这个文件是我删除的以前的版本 我试着重新安装了所有东西,还检查了JAVA_HOME环境变量,该变量设

我有很多麻烦,因为这应该是一项简单的任务。我正试图在课程开始之前,用Gradle为我的一门课程构建一个简单的Java项目(只是Hello World)。我克隆了存储库,下载了所有相关软件,并在命令行上尝试了
gradlebuild
。我发现错误
提供的javaHome必须是有效的目录。您提供了:C:\Program Files\AdoptOpenJDK\jre-8.0.282.8-hotspot
。显示的这个文件是我删除的以前的版本

我试着重新安装了所有东西,还检查了JAVA_HOME环境变量,该变量设置为
C:\Program Files\AdoptOpenJDK\jdk-15.0.2.7-hotspot\
。我还重新启动了终端并重新启动了计算机。如果相关的话,我将使用Git Bash作为shell。有关于如何更改提供的javaHome的建议吗

以下是一些相关的屏幕截图:


我(非常粗略)的解决方案是复制现有的jre15文件夹,并将其重命名为
jre-8.0.282.8-hotspot
。我现在可以构建和运行我的程序,但它看起来非常简单。

在GitHub上构建Java应用程序时,我也遇到过类似的问题。一旦我从Java11升级到Java16,我就开始出现与您相同的错误

在我的例子中,这是一个缓存问题。我缓存了两个目录:

  • ~/.gradle
    (在windows上,这应该类似于
    C:\Users\username\.gradle
  • project/.gradle
    (这是我的应用程序项目本地的gradle目录)

  • 缓存失效为我解决了这个问题。

    在Ubuntu上,我搞砸了几个并行安装(一个稳定的,一个最近的金丝雀和一个旧的)。没问题。直到我删除了旧的金丝雀版本。我开始有完全相同的问题。我也试过了所有的方法,但到目前为止,我还不知道如何克服这个问题。如果我能做到这一点,我会把我的发现写在这里作为一个评论,因为这可能是一个不同的解决方案,适用于你在Windows上的案例。