今天给人讲JDK的安装及使用,写好HelloWorld,编译,然后javac HelloWorld,居然报错:"could not open D:/jre1.5.0/lib/i386/jvm.cfg" 。当时就直接颜面扫地了......
首先想到的是环境变量没有配好,经查,无异。正在纳闷之时,突然想起这个JDK是安装版本,不是压缩版,会不会安装的时候在注册表里面些了什么东西,果然,在注册表里面找到了javasoft一项,里面配置了JDK,JRE的路径,原来JDK直接读的注册表里面的变量,忽略了系统环境变量。
原因找到了,解决起来就好办了,方案有两种,如下:
1.将JDK拷贝到注册表里面的路径下,如果文件夹的名称不一样的话也要改成和注册表里面一样的。
2.重新安装JDK。
建议解决办法:
a.重新安装JDK到任意目录,假设这个目录是C:/java。
b.将装好的JDK,JRE拷贝到任意一个其他目录,如D:/bak,这样做的目的主要是为了备份JDK。
c.制面板里面将JDK,JRE卸载了,这样你电脑里面就没有安装JDK了,也就是说注册表里面没有安装信息了。
d.你会发现C:/java里面的JDK已经被卸载掉了,这是将D:/bak里面的备份JDK拷会到C:/ava里面,然后设置环境变量。
JAVA_HOME: C:/java/JDK1.5.0
path里面添加: %JAVA_HOME%/bin
设置classpath: .;%JAVA_HOME%/lib/tools.jar;%JAVA_HOME%/lib/dt.jar
这是,你就拥有了与注册表无关的JDK了,可以随意移动位置,移动以后只要修改 JAVA_HOME为移动以后的路径就可以了。