本来应该很简单的任务我却遇到了很多麻烦。我正在尝试在课程开始前使用 Gradle 为我的一门课程构建一个简单的 Java 项目(只是 Hello World)。我克隆了存储库,下载了所有相关软件,并在命令行上尝试了
gradle build
。我收到错误Supplied javaHome must be a valid directory. You supplied: 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 有什么建议吗?
以下是一些相关截图:
gradle build
的结果
java -version
的结果
我的(非常粗略的)解决方案是复制现有的 jre15 文件夹并将其重命名为
jre-8.0.282.8-hotspot
。我现在可以构建并运行我的程序,但它看起来很粗略。
一年更新:我问我的教授什么时候开始上课,他说这个解决方案实际上相当不错,足以满足这个学期的需要。
我在 GitHub Actions 上构建 Java 应用程序时遇到了类似的问题。当我从 Java 11 升级到 Java 16 后,我开始遇到与您相同的错误。
就我而言,结果证明这是一个缓存问题。我正在缓存两个目录:
~/.gradle
(在 Windows 上,这应该类似于 C:\Users\username\.gradle
)project/.gradle
(这是我的应用程序项目本地的 gradle 目录)。使缓存无效解决了我的问题。
对我来说,我刚刚删除了文件夹中的 .gradle
C:\Users\username\.gradle
。
使用 Android Studio,依赖项会自动重新安装