好吧,我做错了什么,这让我发疯。
我正在尝试安装最新的JDK (1.6.0_23)。所以,我从Oracle糟糕的网站上下载了它,然后运行安装。我把它安装到C:\Java\jdk1.6.0_23上了
然后,我创建了一个指向C:\Java\jdk1.6.0_23的JAVA_HOME用户变量。然后,我在Path环境变量的末尾添加了一段%JAVA_HOME%\bin。
但是,当我试图简单地打开命令提示符并运行简单的java命令时,系统告诉我这不是一个可识别的命令。我必须手动cd进入bin目录才能执行任何操作。
我是否还需要一个指向JRE的类路径变量?我注意到前面有一个指向jre/lib/QTJava.zip的Classpath变量,但我删除了它。
如果已经安装了JDK并设置了JAVA_HOME变量,那么在类路径中还需要这个JRE吗?我运行的是Windows7,所有的开发都是在Eclipse中完成的。
发布于 2010-12-11 12:07:50
问题可能是因为您将JAVA_HOME设置为用户变量,但试图从PATH引用它,而PATH是一个系统变量(或者它是?)。不能这样做,因为系统变量在用户变量之前求值。
有两种可能的解决方案: 1.将JAVA_HOME设置为系统变量,而不是2.创建一个新的用户变量PATH并在其中设置%JAVA_HOME%\bin。用户路径和系统路径变量将在运行时自动连接。
发布于 2010-12-11 11:55:52
来自http://social.answers.microsoft.com/Forums/en-US/vistainstall/thread/48b23109-9fbc-47c5-a5d1-465773f94704
(在末尾)
1)在注册表中启用“延迟变量扩展”(见http://batcheero.blogspot.com/2007/06/how-to-enabledelayedexpansion.html)
2)将var2周围的'%‘符号改为'!',例如"%var2%“变为"!var2!”
我在Windows7上做了一些有限的测试,这似乎解决了这个问题。
也许可以试一试,看看它是否可以修复它(我这里没有windows可以尝试)
发布于 2010-12-11 11:56:44
我是否还需要一个指向
的CLASSPATH变量?
严格地说,不是。如果您试图运行java类,但没有使用-cp或-jar选项,则可以使用CLASSPATH变量。
CLASSPATH变量不需要指向JRE。java.exe命令等都知道在哪里可以找到JRE的运行时类。(而且它们也不会在CLASSPATH上查找它们。)
对于路径问题,请尝试运行:
C:\Java\jdk1.6.0_23\bin\java.exe -version如果这不起作用,那么您的实际安装就有问题。如果可以,请尝试查看命令外壳的环境变量中设置的JAVA_HOME和PATH。
https://stackoverflow.com/questions/4415093
复制相似问题