2011-07-08 235 views
1

我在用户定义变量和系统变量中设置了JAVA_HOME = C:\Program Files\Java\jdk1.6.0_26,在系统变量中设置了用户定义变量PATH = C:\Program Files\Java\jdk1.6.0_26\bin中的classpath = .;设置Java环境变量?

现在,当我在Windows 7操作系统上在cmd上键入java然后得到消息 - 错误无法打开`C:\Program Files\Java\jre6\lib\i386\jvm.cfg'

这里需要注意的是,最初只有jre6被定义在Java文件夹中,所以我不得不安装jdk,但仍然得到这个错误的任何线索?

更新 我能得到的Java的信息,我所做的就是最初我已经建立了路径变量的信息在以下一些%SYSTEM_ROOT%和其他变量在PATH变量的值,但现在我只是把C:\Program Files\Java\jdk1.6.0_26\bin作为第一个值PATH变量值列表,所以它的工作,猜测%SYSTEM_ROOT%已预先定义的路径指向旧的jre路径位置的设置。

  1. 现在,当我运行java -version,我 得到以下信息,我怎么 知道是否安装了Java是32位或 64位?

Java版本 “1.6.0_26” 的Java(TM)SE 运行时环境(建 1.6.0_26-B03)的HotSpot的Java(TM)客户端虚拟机(建设20.1-B02,混合模式, 共享)

+0

您是否尝试过重新启动CMD? – Serhiy

+0

是的,我确实,不知道这里发生了什么。 – Rachel

+0

你有没有在PATH变量中删除jre的前一个条目? – Serhiy

回答

3

PATH变量是正确的,但对于CLASSPATH变量使用 SET Classpath="C:\Program Files\Java\jdk1.6.0_26\lib"

JVM使用类路径在运行时搜索的.class文件。

通过使用“。;” JVM将在bin目录中搜索.class文件,而rt.jar的已编译.class文件位于lib目录中。

这就是为什么你面临错误。

了解CLASSPATH变量@http://programmingbulls.com/classpath-variable-java

0

您可以检查您的32位或64位通过读取Java中的“sun.arch.data.model”系统属性;

System.out.println(System.getProperty("sun.arch.data.model")); 

我的答案'64'。

您可以使用类似的方式查看所有可用的系统属性;

Properties p = System.getProperties(); 
Enumeration keys = p.keys(); 
while (keys.hasMoreElements()) { 
    String key = (String) keys.nextElement(); 
    String value = (String) p.get(key); 
    System.out.println(key + ": " + value); 
} 
0
set path=%path%;"C:\Program Files\Java\jdk1.6.0_26\bin" 

set path=%path%;"C:\Program Files\Java\jdk1.6.0_26\bin"