2016-12-30 75 views
0

以前我在我的机器中使用Java 1.8。但是现在我需要使用Java 1.6。所以我在系统环境变量中更改了下面的值。无法更改Windows中的Java版本

JAVA_HOME

U:\ POC \ jdk1.6.0_31

PATH

U:\ POC \ jdk1.6.0_31 \ bin \ %JAVA_HOME%/ bin中

此外,我即使在它显示的Java版本,在我的命令提示符1.8重新启动我的系统

command Prompt

可以在如何解决这个问题的人的建议?

+0

不要,你没有改变java版本的方式。如果你想要旧的,只需安装它。你可以在一台机器上安装几个java运行库,但只有一个将作为主要的java运行库运行。如果你想在旧的jvm上运行某些东西,你应该[运行'java jar'命令](http://stackoverflow.com/questions/1238145/how-to-run-a-jar-file)通过指定' java'部分 - 毕竟这是一个程序。 –

+1

您似乎将JDK与JRE混淆。 –

+0

'echo%PATH%'和'echo%JAVA_HOME%'说什么? –

回答

2

我没有用过Windows在很长一段时间,但我记得有环境变量的2个部分。一个系统范围和另一个用户范围。

  1. 检查系统范围内没有任何内容定义JAVA_HOME
  2. 像@Stephen C说的,发帖的输出为echo %PATH%echo %JAVA_HOME%
  3. 检查在可能包含java可执行文件的路径中没有任何内容出现在%JAVA_HOME%/bin之前。像Oracle客户端一样随附Java。您始终可以将%JAVA_HOME%/bin放在路径的前面,而不是末尾。

@大卫圣地亚哥的答案是一个坏主意。如果您让IDE执行您的工作,那么在出现问题时您将无法排除故障。

0

系统显示系统上安装的最新版本。 这只是信息,不应该担心你。

如果您打算使用Java JDK 6.0_31版本,则只需在您的IDE(Eclipse,Netbeans,IntelliJ IDEA,无论什么)中使用该版本进行配置即可。

Example

+0

这不是OP要求的答案。他的路径显示了Java 8,如果他试图从命令行构建,这确实是一个问题。 –

+0

感谢您的评论,正确的答案取决于问题的角度。显示控制台数据(路径)或在IDE中编译。 我不同意你的想法,因为它指的是配置一个绝对路由,丢弃其他可能的版本。 此外,问题提到,“但现在我需要使用Java 1.6。”。 如果您想使用其他JDK版本,该怎么办? 最好的问候。 –

+0

你显然不必同意我的观点,没关系。为了切换cmd使用的Java,OP会改变他的JAVA_HOME值。在IDE中,他会从下拉菜单中选择另一个安装。没有软件可以通过阅读用户的想法来动态改变Java。 –