关于默认JDK的切换

我的系统是XP,安装了JDK1.4和1.6,我在DOS窗口输入java -version 总是显示版本是1.6,我想将系统的默认jdk设置为1.4,请问如何做?我在path中加入了D:\j2sdk1.4.2_13\bin,但运行java -version后还是显示为jdk1.6,请问如何设置为1.4?谢谢。

把D:\j2sdk1.4.2_13\bin放在%PATH%的最前面试试 :D

设置环境变量(变量名):JAVA_HOME
然后把路径D:\j2sdk1.4.2_13设到变量的值中,注意路径后面没有带“\bin”

1.6以后楼上的方式已经不行啦。
要改注册表。

土办法是设置java_home以后,删掉windows\system32下面的java.exe和javaw.exe..

[quote="repsihWDX"]1.6以后楼上的方式已经不行啦。
要改注册表。

土办法是设置java_home以后,删掉windows\system32下面的java.exe和javaw.exe..[/quote]

他是设置1.4呢 ,1.6以上不可以了吗?还没有试过呢?多谢提醒

把D:\j2sdk1.4.2_13\bin放在path最前面

[quote="repsihWDX"]1.6以后楼上的方式已经不行啦。
要改注册表。

土办法是设置java_home以后,删掉windows\system32下面的java.exe和javaw.exe..[/quote]
汗,我用的1.6,怎么就可以呢

[quote="kjj"][quote="repsihWDX"]1.6以后楼上的方式已经不行啦。
要改注册表。

土办法是设置java_home以后,删掉windows\system32下面的java.exe和javaw.exe..[/quote]
汗,我用的1.6,怎么就可以呢[/quote]
me too...难道说的是大于1.6的版本?

[quote="wangdi"][quote="kjj"][quote="repsihWDX"]1.6以后楼上的方式已经不行啦。
要改注册表。

土办法是设置java_home以后,删掉windows\system32下面的java.exe和javaw.exe..[/quote]
汗,我用的1.6,怎么就可以呢[/quote]
me too...难道说的是大于1.6的版本?[/quote]

主要看你是不是装了sun在线更新的jre版本:)

其实我是严重怀疑lz在第一次java -version之后修改了path,但是没有关闭命令行窗口,直接又来一次java -version。
修改了path要看到修改结果的话记得把命令行窗口关闭了重新来。

其实JAVA_HOME感觉没啥用,设置的还是PATH而已

[quote="wangdi"]其实JAVA_HOME感觉没啥用,设置的还是PATH而已[/quote]

1.6以后sun为了推他的富客户端,开始对jre做手术

装jdk如果你是直接拿别人的jdk目录copy过来设置path和classpath,那么ok还是以前的方式。
但如果你安装jdk的话,他会默认的在windows/system32下面搞一个java.exe和javaw.exe
这俩东西不干别的,就是用来调注册表里查看实际的版本的jdk java.exe和javaw.exe的。
这样他就能实现自动更新jre的功能咯

当然这是在system32这个目录在path中的位置比java_home的位置前面的时候才发生的,所以上面说的也没错,最好的方式是改注册表

这个我以前也遇到过,好似是改注册表,就可以了;
至于怎么改,忘了;
(白说了,呵呵)

在XP的控制面板里应该有Java这一项,你去看看,好像能列出你当前安装的JDK,并且能打开或关闭某一个JDK。

[quote="nfxu"]在XP的控制面板里应该有Java这一项,你去看看,好像能列出你当前安装的JDK,并且能打开或关闭某一个JDK。[/quote]

真的耶。。土了。。

[quote="green_coffee@126.com"]把D:\j2sdk1.4.2_13\bin放在path最前面[/quote]
此为正解!!!

技巧: 安装好JAVA后。 做个COPY, 然后UNINSTALL, 省得那一堆的注册表要修改。 直接使用那个COPY的就可以了!世界从此清静了!!! 我从来不装JDK,都是问别人COPY给我一个。

[quote="sdh5724"] 技巧: 安装好JAVA后。 做个COPY, 然后UNINSTALL, 省得那一堆的注册表要修改。 直接使用那个COPY的就可以了!世界从此清静了!!! 我从来不装JDK,都是问别人COPY给我一个。[/quote]
这才是人类

楼主装过ORACLE后再装JDK就应该知道,要用哪个JRE就在环境变量中把路径放得靠前点

把%JAVA_HOME%\bin放在path最前面就OK了

应该是环境变量配置的问题,你找找
JAVA_HOME :jdk的根目录
ClassPath:c:\jdk\lib\
path:c:\jdk\bin\

把两个版本的path都配置好,想用哪个,就把哪个放在前面

设置JAVA_HOME为1.4的目录,classpath也要设置为1.4的,在path中加入%JAVA_HOME%\bin(这个要放在path的最前面,Windows目录下也有默认的java.exe)。
然后重新开一个命令行窗口执行Java -version就可以了。
如果用Eclipse或Netbeans等IDE,里面的Java环境就需要另外设置了。
祝你好运 :D

[quote]
green_coffee@126.com 写道
把D:\j2sdk1.4.2_13\bin放在path最前面
[/quote]

所谓"最前面"是指最左边,还是最右边?

把1.4的配置放在path的最前面

当然是最左边了,你写字是从右至左?

在环境变量path里面 把%JAVA_HOME%\bin 放在最前面 就行

配置如下,版本號不同,根據情況改一下:
path: D:\j2sdk1.4.2\bin;
CLASSPATH: D:\j2sdk1.4.2\lib;C:\j2sdk1.4.2\lib\dt.jar,tools.jar.;D:\j2sdk1.4.2\jre\lib\rt.jar
JAVA_HOME:d:\j2sdk1.4.2

全部都放到最前面去就可以了...

JAVA_HOME配置的是多少,-verison就是多少

将D:\j2sdk1.4.2_13\bin放在path最前面

1.删掉windows\system32下面的java.exe和javaw.exe
2.再按照网上的方法来设置JAVA_HOME

我1.4 1.5 1.6 都装过 1.6 还到 1.5 直接把环境变量设置里的 %JAVA_HOME% 换成 1.5的 目录就好了啊 如果不对 那你检查一下 path设置里的%JAVA_HOME%\bin 是不是在最前面 OK!

D:\j2sdk1.4.2_13\bin 放到path的最前边。

path查找是由顺序的

感觉应该是改path,把1.4放到最前面就好了

把你想要的JDK路径放在前面,就优先被加载了.

[color=violet][b]我来说说[/b][/color]
其实没必要切换,你在运行的时候,改变CLASSPATH,就可以了,在编码的时候,工具里面也可以切换JDK,我现在公司就是用1.4的,我自己用1.5的,就在eclipce里面切换,行了,这个帖子该关了,觉得你有点傻

[quote]
我来说说
其实没必要切换,你在运行的时候,改变CLASSPATH,就可以了,在编码的时候,工具里面也可以切换JDK,我现在公司就是用1.4的,我自己用1.5的,就在eclipce里面切换,行了,这个帖子该关了,觉得你有点傻
[/quote]
正解...