【问题标题】:Switching between Java Runtime environments在 Java 运行时环境之间切换
【发布时间】:2013-01-16 02:36:38
【问题描述】:

我在运行 Windows XP sp3 的计算机上安装了 Java 6 和 Java 7。我在“我的电脑”->“属性”中的环境变量(PATH、JAVA_HOME)中输入了路径。但是当我给

java-版本

我仍然收到以下文字

java版本“1.7.0_09” Java(TM) SE 运行时环境(构建 1.7.0_09-b05) Java HotSpot(TM) 客户端虚拟机(内部版本 23.5-b02,混合模式,共享)

但是,当我尝试时

javac-版本

我明白了

javac 1.6.0_03

如何将运行时从 Java 7 更改为 Java 6?当我使用 ant 在 eclipse 中编译我的程序时,我得到以下

警告:java\util\List.class(java\util:List.class):主要版本 51 比50新,这个支持的最高主版本 编译器。 [javac] 建议升级编译器。

【问题讨论】:

  • 当你输入echo %PATH%时它会说什么?

标签: environment-variables java


【解决方案1】:

Path 首先是 JRE,因此是 java -version,其次是 JDK,因此是 javac -version。检查您的 PATH 变量。

如果您想要 JDK 版本,请将其放在 PATH 的第一个位置。

【讨论】:

  • +1 表示正确答案。我总是添加 %JAVA_HOME%\bin;作为 PATH 上的第一个参数。这样我只需要编辑 JAVA_HOME 即可在 JDK 之间切换。
  • 没有立即工作,必须修改系统变量而不是“当前用户”变量才能使其工作。
【解决方案2】:

如果没记错的话,JDK 或 JRE 的 java 7 windows 安装程序会将 java.exe 复制到某些 windows 公用路径。我不记得确切的路径,但可能是 C:\Windows\System32。在命令行上试试这个以知道 java.exe 的位置在哪里:

where java

相应地更新您的路径优先级。

【讨论】:

  • 在windows xp中不确定,但在windows 7下可以。你可以试试。它类似于 unix 中的 'which' 命令。
【解决方案3】:

安装 Java (JRE) 时,它会将 java.exe 复制到 C:\Windows\System32 中,以及 C:\Program Files 下的安装目录。但是当您安装完整的 JDK(带有编译器)时,javac.exe 不会这样做。当您有多个版本的 java 时,当您在命令行中键入 java 时,将调用最后安装的一个。

如果您需要拥有多个 Java 版本,请使用完整路径,尝试在命令行中使用不合格的 java 总是会遇到问题。或者,重新安装 JRE 7 - 这将强制默认 java 为 V7。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-27
    • 2018-11-20
    • 2020-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    相关资源
    最近更新 更多