java如何忽略过程值_Windows忽略JAVA_HOME:如何将JDK设置为默认值?

在Windows上, java可执行文件使用Windowsregistry来查找要运行的Java的默认版本。

运行java.exe的副本是通过使用PATH环境variablesfind的。 除非您采取措施更改此设置,否则默认情况下会在Windows目录中find副本。 由于此副本不在Java运行时目录中,因此通过查看registry来查找它。

所以,你需要修改registry,或者把你想要的Java版本放在PATH的Windows目录下。

我也有这个问题。 我正在运行1.6,但想要构build我正在使用1.5的代码。 我已经改变了JAVA_HOME和PATH(用户和系统)无济于事。

答案是1.6的安装程序将java.exe,javaw.exe和javaws.exe放入我的Windows \ System32文件夹(Windows 7)中。

我通过将这些文件重命名为java_wrong.exe,javaw_wrong.exe和javaws_wrong.exe来解决这个问题。 只有这样做之后,它才能获得JAVA_HOME和PATH中定义的正确版本的java。 因此,我重新命名了这些文件,因为这些文件是以一种简单可逆的方式删除的。

希望这可以帮助!

Windows不会忽略任何东西。 这是您的设置的问题; Windows只是使用你提供的。 对JAVA_HOME没有特别的了解。

CLASSPATH也与Windows无关。 到Windows它只是一个环境variables被扩展到文件夹位置。

检查你的%PATH%环境variables。 这是使Windows在另一个之前find的东西。 path(如链接到的post)应该指向%JAVA_HOME%\bin; 。 再一次,你链接的post给了你一个使用batch file设置的方法。

(对于其他人可能不知道这一点:检查%PATH%最简单的方法是打开命令提示符并inputecho %PATH% 。也可以通过右键单击开始菜单右窗格中的Computer然后select“ Properties ,“ Advanced System Settings和“ Environmental Variablesbutton。)

在Windows 8中,您可能需要删除C:\ProgramData\Oracle\Java\javapath目录。

从path

它解决了我的问题。

我遇到过同样的问题。 我安装了一堆Java版本,出于某种原因,使用Java 1.7而不是Java 1.6,尽pipe我在path中指定使用1.6(C:\ jdk1.6.0_45_32 \ bin)。

我必须移动我想要使用的JDK的path(1.6)作为PATH环境variables中的第一个条目,以确保Windows使用1.6而不是1.7。

所以,例如,之前的PATH环境variables是:

C:\Program Files (x86);...;C:\dev\ant181\bin;C:\jdk1.6.0_45_32\bin

在我把jdk移到第一个之后,它工作了:

C:\jdk1.6.0_45_32\bin;C:\Program Files (x86);...;C:\dev\ant181\bin

我猜Java 1.7的Windows安装程序把它安装到PATH中已经存在的其他目录中,因此首先使用而不是指定的自定义PATH条目C:\ jdk1.6.0_45_32 \ bin;

将Path环境variables设置为所需的jdk / bin目录

对于我在'Path'variables中的情况,有一个像“ C:\ProgramData\Oracle\Java\javapath; ”。 这个位置是从java 8的java.exe , javaw.exe和javaws.exe ,它是通过Oracle的jdk.exe新安装的。

我从path中删除了这个文本,其中我的path已经具有%JAVA_HOME%\bin 。

现在,variables'JAVA_HOME'正在控制我想要的Java版本。

在我的情况下,我安装了Java 7和8(两个x64),我想redirect到Java 7,但是一切都设置为使用Java 8. Java使用PATH环境variables:

C:\ ProgramData \ ORACLE \的Java \ javapath

作为查找文件夹运行时间的第一个选项(是隐藏文件夹)。 该path包含3个不能编辑的符号链接。

在我的电脑中,PATH环境variables如下所示:

C:\ ProgramData \ Oracle \ Java \ javapath; C:\ Windows \ System32; C:\ Program Files \ Java \ jdk1.7.0_21 \ bin;

就我而言,它应该是这样的:

C:\ Windows \ System32; C:\ Program Files \ Java \ jdk1.7.0_21 \ bin;

我不得不剪切和粘贴符号链接到其他地方,所以Java找不到它们,我可以在以后恢复它们。

将JAVA_HOME和JRE_HOME环境variables设置为所需的java文件夹的运行时(在我的情况下是Java 7)之后,命令java -version应该显示所需的java运行时。 我说没有必要乱用registry。

在Win7 x64上testing。

这里有一个额外的因素。 除了java安装程序放在任何你要求把它们放在窗口上的java可执行文件之外,java安装程序还会把这些可执行文件的副本放在你的windows system32目录下,所以你可能会用到每一个java可执行文件最近安装。

以防万一,如果您使用.BAT文件作为Windows服务,我会build议卸载Windows服务,并重新安装后,将%JAVA_HOME%更改为指向正确的Java版本。

我安装了Java 7和8,我想redirect到Java 7,但在我的cmd提示窗口中的Java版本显示Java 8。

在最后添加了Java 7 bin目录path( C:\ Program Files \ Java \ jdk1.7.0_10 \ bin )到PATHvariables,但是没有解决,并显示了Java 8.所以我改变了Java 7path到path值和它的工作。

打开一个新的cmd提示窗口,并检查我的Java版本,现在它显示Java 7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值