即使指定了JAVA_HOME,也无法识别javac

时间:2014-02-24 15:08:40

标签: java

当我在cmd中键入javac时,它无法识别,虽然我确实安装了jdk 1.7并将JAVA_HOME指定为以下

c://Programfiles/Java/jdk-1.6/bin // with and without bin , with and without double slash

没有结果


我也试过

;c://Programfiles/Java/jdk-1.6/bin // with and without bin , with and without double slash

没有结果


还有其他可能的解决方案

PS System varialbes框被禁用。所以我只能添加user variables

4 个答案:

答案 0 :(得分:2)

您的方法有几个问题:

  1. 环境变量JAVA_HOME与操作系统用于查找可执行文件的机制无关。为此,考虑PATH变量。 JAVA_HOME变量有时被其他寻找Java的应用程序使用。

  2. 如果使用变量JAVA_HOME,则应将其设置为bin目录的父目录。

  3. Windows使用反斜杠分隔目录,而不是正斜杠。 (编辑:至少,Windows 7允许正斜杠,但我建议仍然使用反斜杠。)此外,“C:”和根目录之间只有一个分隔符。

  4. 通常包含已安装程序的目录是“Program Files”,而不是“ProgramFiles”

  5. 总而言之,您应该执行以下操作:

    1. 使用Java安装目录作为值创建环境变量JAVA_HOME,例如: “C:\ Program Files \ Java \ jdk-1.6”。此目录必须包含bin目录,而该目录又包含可执行文件(例如java.exe)。

    2. 通过在其末尾添加“;%JAVA_HOME%\ bin”来扩展环境变量PATH。

    3. 两个编辑都应该在系统变量中进行。现在您只需打开命令提示符并使用“java -version”检查此设置。这应该有用。


      修改

      如果只能在环境设置中编辑用户变量,则以下内容将起作用:

      1. 如上所述,将变量JAVA_HOME添加到用户变量中。
      2. 将(新)变量PATH添加到内容为“%PATH%;%JAVA_HOME%\ bin”的用户变量中。
      3. 如果现在打开命令提示符并通过简单地键入“path”来检查路径变量,您将看到路径中的变量已正确扩展。现在查看“java -version”。

答案 1 :(得分:2)

默认情况下,为了找到shell,所有程序都必须在系统“path”环境变量中,这与JAVA_HOME没有任何关系。

如果您想同时配置它们,可以使用以下命令:

set JAVA_HOME=jdk_path
set PATH=%JAVA_HOME%/bin;%PATH%

答案 2 :(得分:1)

两步过程:

  
      
  1. 设置JAVA_HOME = jdk_path; jdk_path \ bin和
  2.   
  3. 设置PATH =%JAVA_HOME%
  4.   

然后,确认,运行:

  

java -version

答案 3 :(得分:1)

在命令提示符处识别或未识别的命令与JAVA_HOME环境变量无关,而是与 PATH 变量无关。

您可以使用

在Windows命令行中检查路径
C:\>  path

除此之外,请务必指向正确的 jdk1.7 bin目录。调用此...Java/jdk-1.6/bin

是个坏主意