当前位置: 首页 > 知识库问答 >
问题:

java和javac的java版本值不同

贝镜
2023-03-14

我用java命令和javac命令设置了不同的java版本。

java -version

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode, sharing)

javac -version


javac -version
javac 1.6.0_18

where java

C:\Windows\System32\java.exe
C:\Program Files\Java\jdk1.6.0_18\bin\java.exe

路径设置为1.6,但它是选择1.8。建议我如何解决这个问题。

共有1个答案

颜修明
2023-03-14

这是因为当您选择安装“公共jre”时,Java安装程序会将< code>java.exe和< code>javaw.exe复制到< code > C:\ Windows \ System32 \ Java . exe 中(但因为那是JRE,当然不会复制< code>javac.exe)。

并且因为< code>System32出现在< code > PATH < code>java.exe的前面,所以将从那里使用(并且在常规的JDK安装之前,将不会搜索< code > Java . exe )。但是由于JRE中没有< code>javac.exe,因此可以从您的JDK中使用它。

公共JRE只需要用于浏览器Java插件。2014年,我认为Java插件已经死了,(我认为)甲骨文应该将JDK安装程序更改为不自动安装。

实际上,老实说,我认为这种行为是一个错误。安装程序不应将文件复制到系统32

 类似资料:
  • 我试图用1.8作为目标版本在mac上编译一个jar,但是javac失败了,消息是“目标版本无效”。 /usr/local/bin://usr/bin://bin://usr/sbin://sbin://usr/local/bin://usr/local/mysql/bin://opt/x11/bin://usr/local/git/bin://developer/tools/panda3D (因为

  • 注:此题不是重复题!与其说是UnsupportedClassVersionError,不如说是RMI 我在尝试运行RMI代码时获得UnsupportedClassVersionError。我的其他代码都运行得很好,但是我正在尝试按照RMI教程操作,而代码却没有运行。我运行的是Linux Mint17.1 Rebecca,我没有使用任何IDE。我还在通过命令行编译和运行本地机器上的所有代码,所以我使

  • 从一些有经验的java程序员那里,我想问一下使用 和

  • 我用的是Cent-OS。 导出路径=$path:$java_home/bin 请告诉我如何将java版本只设置为1.8。

  • 我在打开eclipse时出错,当我打开cmad javac-version时出错 线程“main”java.lang.ClassFormatError中出现异常:类文件javax/tools/StandardJavaFileManager中的魔法值0不兼容 你能帮我修一下吗 OS: windows 10 java版本 java版本"11.0.6"2020-01-14 LTS Java(TM)SE运

  • 我需要在Eclipse中为一个开发项目使用PMD、Findbugs和Checkstyle。Java6足以使用这些工具吗?或者我需要java 7?