php小编新一为您介绍如何尝试使用未安装的jdk版本构建程序。在开发过程中,使用正确的jdk版本是至关重要的,但有时我们可能需要尝试使用其他版本来解决一些问题。这时,我们可以通过设置环境变量来指定要使用的jdk版本,并使用命令行工具来构建我们的程序。在这篇文章中,我们将详细介绍如何进行这些操作,以帮助您顺利完成开发任务。让我们开始吧!
问题内容
使用 oracle 安装程序,我在 windows 计算机上安装了 jdk-21。但是,当我尝试构建项目时,出现错误消息提示 gradlew 不兼容,因此我卸载了 oracle jdk-21,现在我已经安装了 adoptium 构建并使用此命令设置了 java_home
setx java_home“c:program fileseclipse adoptiumjdk-21.0.1.12-hotspot”
当我在命令提示符下运行 where java 时,我得到:
c:program fileseclipse adoptiumjdk.21.0.1.12-hotspotinjava.exe
登录后复制
但是,当我尝试构建项目时,收到一条错误消息,指出找不到 java 可执行文件“c:program filesjavajdk-21injava.exe”。我的电脑似乎正在尝试查找我卸载的 oracle 版本。
我按照本文中的说明在系统路径中设置了 %java_home%in ,但它说找不到可执行文件。
这是我的环境变量路径中的第一个条目
c:program fileseclipse adoptiumjdk-21.0.1.12-hotspotin
登录后复制
这是我的最后一篇文章
%JAVA_HOME%in
登录后复制
为什么程序希望使用已卸载的 java 版本(即我删除的 oracle 版本)进行构建?
此链接显示了我的 windows 计算机上的 java 路径的屏幕截图。
这个 java spring 项目就是我正在尝试构建的项目。
解决方法
也许这与 gradle 缓存机制有关。删除 .gradle/daemon//registry.bin 文件,它应该使用您的 JAVA_HOME 环境变量。
这里是 gradle 守护进程文档。也许这个 部分 会导致您在评论中描述的后续错误。您可以使用 gradle –no-daemon 禁用当前构建的守护进程,并检查您的项目是否会构建。
您链接到的项目正在使用 Gradle 8.0.1。不支持使用 Java 21 运行它,您可以在 https://docs.gradle 中看到.org/current/userguide/compatibility.html。因此,要以不变的方式构建该项目,您必须使用最多 Java 19 运行 Gradle。
即使 JAVA_HOME 设置为新位置,仍使用旧的 Java 安装听起来很奇怪,如果您实际上从命令行运行 Gradle。如果从 IDE 运行它,则必须检查 IDE 设置。
现在我只能想象,在你的 GRADLE_USER_HOME (通常是你的用户主目录中的 .gradle/ )中,你有一个 gradle.properties ,你可以在其中设置旧 Java 安装的路径。
如果情况并非如此,问题是,您尝试运行构建的确切输出是什么,错误到底来自哪里。如果它来自 Gradle 包装器脚本,您可以关闭回声抑制以查看实际发生的情况。
以上就是尝试使用未安装的 JDK 版本构建程序的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2621965.html