繁体   English   中英

Windows上的Java和环境变量出现问题

[英]issue with java and environment variables on windows

我有一个奇怪的问题。 安装Java jdk 6u25之后,我通过在命令提示符下键入java来测试安装。 一切正常,控制台按预期显示了使用选项。 这大约是3周前-我最近在计算机上重新安装了Windows 7-现在我想开始使用play框架并按照教程进行操作。 我有一个具有play new的新应用程序,但由于以下原因无法使用play run

玩! 1.2.3, http: //www.playframework.org

Ctrl + C停止

无法执行Java可执行文件,请确保已正确设置JAVA_HOME环境变量。

有趣的是,在控制台中键入Java仍会显示使用选项,并且eclipse或netbeans都不会抱怨缺少jdk。 不过,我检查了我的环境变量并惊讶地发现:

完全没有引用Java。

严重的是,我不知道控制台,Eclipse和Netbeans是如何找到我的Java的。 作为第一个对策,我再次重新安装了java,希望安装程序可以正确设置路径。 没有。 现在,我希望您提出建议:是否应该只创建JAVA_HOME变量? 如果这样做,jdk的其他版本会覆盖该变量以指向新版本,还是我每次都必须手动更改该变量? Eclipse和Netbeans呢? 我猜想它们是用“自己的” jdk下载的。 如果我想在机器上更新Java,它也会更新它们的版本吗?

更新:我手动设置环境变量,然后重新启动计算机。 现在一切正常,但是我想知道什么是符号链接。 您能否在评论中给我链接或简要说明?

Eclipse和Netbeans使用不同于play,ant,maven,gradle等命令行工具的方式来查找Java安装。

IDE可能会搜索您的注册表,猜测默认位置,甚至将JRE与安装一起预打包。

命令行工具通常依赖于JAVA_HOME变量。 而且您必须手动设置。

我应该只创建JAVA_HOME变量吗?

有几种使用该环境变量的工具,所以我建议创建它。

如果这样做,jdk的其他版本会覆盖该变量以指向新版本,还是我每次都必须手动更改该变量?

如果将新的Java版本安装到同一文件夹中(或创建符号链接),则不会。

Eclipse和Netbeans呢? 我猜想它们是用“自己的” jdk下载的。 如果我想在机器上更新Java,它也会更新它们的版本吗?

这取决于是否预先捆绑了JDK以及如何完成配置。 我不能代表Netbeans,但是在Eclipse中,您可以将其添加到eclipse.ini

-vm
C:/Java/jre/bin

请注意,这是bin文件夹的示例路径。 如果您不在那里添加版本或使用符号链接(请参见上文),则在安装新版本时不必更新路径。

您可能在C:\\ windows或其他公共目录中有一个(较旧的)java.exe。 确保在命令行上获得的Java是您认为的Java:

java -version

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM