Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
';javac';不被承认。_Java - Fatal编程技术网

';javac';不被承认。

';javac';不被承认。,java,Java,我想编译我用VS代码编写的程序,但我不能,因为 “javac”未被识别为内部或外部命令, 可操作的程序或批处理文件 在四处搜索时,我觉得它应该可以工作: 通过所有必要的扩展,我在VS代码的用户设置中设置了java.home以覆盖环境变量: “java.home”:“C:\\Program Files\\java\\jdk1.8.0_181\\bin” 这一个不起作用,但我也在没有“\\bin”的情况下尝试了它,而且也没有运气 我尝试将JAVA_HOME和JDK_HOME设置为上面列出的相同路径,

我想编译我用VS代码编写的程序,但我不能,因为

“javac”未被识别为内部或外部命令, 可操作的程序或批处理文件

在四处搜索时,我觉得它应该可以工作:

  • 通过所有必要的扩展,我在VS代码的用户设置中设置了java.home以覆盖环境变量:
  • “java.home”:“C:\\Program Files\\java\\jdk1.8.0_181\\bin”

    这一个不起作用,但我也在没有“\\bin”的情况下尝试了它,而且也没有运气

  • 我尝试将JAVA_HOME和JDK_HOME设置为上面列出的相同路径,并尝试包括\bin和not。两者都不起作用
  • 当我在命令提示符中执行“where java”或“java-version”时,JDK/Javac不会出现(我在Windows 8.1上运行)

  • 我使用命令提示符导航到javac文件,唉,这是已知唯一有效的方法。(但是,如果我在别处更改目录,javac就不起作用了。)我该怎么办?为什么会发生这种情况?

    JAVA\u HOME
    应该指向安装JDK的路径。这是:C:\ProgramFiles\Java\jdk1.8.0\U 181。之后,您应该编辑
    PATH
    环境变量以添加以下条目

    窗口:

    PATH=%JAVA_HOME%\bin;<rest of current PATH value>
    
    PATH:是负责通过命令行使可执行文件可用的系统环境变量。这就是为什么它的值需要包含
    JAVA_HOME
    中的
    bin
    文件夹,而
    JAVA_HOME
    值就是路径(您可以将其更新为指向不同的JDK)

    更新路径值后,您可以打开一个终端(Windows中的cmd)并键入:

    javac -version
    
    您应该看到如下输出:

    javac 1.8.0_181
    

    现在
    javac
    将可供任何使用它的应用程序使用,例如VS代码。

    是否可能重复VSCode for Java?使用像IntelliJ、Eclipse等java专用工具是非常简单的。。。你会得到更多的智能上下文帮助。但是如果您愿意,JAVA_HOME变量没有
    /bin
    目录。和/或您可以将路径放在path中(这次包括
    bin
    ),以便可以找到
    javac
    可执行文件。顺便说一句,你检查过路径是否正确吗?
    javac 1.8.0_181