2017-02-12 111 views
0

我有了要在java7运行POS和我通过在命令提示符下键入java -version检查当前版本,并得到了以下的输出:如何通过环境变量更改当前Java版本?

java version "1.8.0_77" 
Java(TM) SE Runtime Environment (build 1.8.0_77-b03) 
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode) 

因为我想java7,我想编辑环境变量指向jdk1.7,当我检查了变数,这是如下:

enter image description here

我看到它已经指向java7 JDK。这怎么可能以及如何运行java7?

UPDATE:

系统变量PATH enter image description here

我想我想通了这个问题,但没有解决方案。第一个系统变量 - C:\ProgramData\Oracle\Java\javapath在这里引起了麻烦,在给定路径中有java.exe。这可能是我直接从java7升级到java8的产品。但是,如果我删除它,它会导致cmd错误。可以做什么?

+0

相关:[Windows命令行中是否有'which'的等价物?](http://stackoverflow.com/q/304319/978917)。 – ruakh

+1

我想象一下,当涉及到系统变量时,先到先得。您需要查看系统路径以确定其来源。 –

回答

0

经过数小时的研究,我发现问题和解决方案非常简单。

因为我使用java通知升级到java8,那已经进入C:\ProgramData\Oracle\Java\javapath的系统变量已经被指向新的jdk。

为了使用java7,我只需要将jdk1.7指针移到顶端。

0

首先,我们无法在用户变量部分看到“PATH”变量的全部值。

我看到它已经是针对java7 jdk。这怎么可能

通常“JAVA_HOME”由apache tomcat service installer设置,因为Tomcat的,只能通过“JAVA_HOME”变量找到的Java。

以及如何运行java7?

在ruby和python之后的PATH变量中查找是否有jdk 1.8提到的任何地方。并更换与JDK 1.7路径,也可以在PATH指作为JAVA_HOME%JAVA_HOME%

eg: PATH = C:\Ruby....;%JAVA_HOME%\bin; 
+0

我通过添加用户变量更新了问题 - 但没有java指针。在系统变量中有,但它仍然是jdk1.7 – SachiDangalla

0

你混合两件事情。 1. Java home:如果你试图回显JAVA_HOME,它会指向jdk1.7 ...正如你提到的那样。许多程序/应用程序使用这个env变量来定位java。 2.路径变量:这是可执行文件所在的位置。因此,如果您尝试运行一些程序/可执行文件,系统将尝试使用路径项列表来查找可执行文件。所以如果你想直接使用java,这应该指向jdk 7。