我有一个必须在java7上运行的POS,我通过在命令提示符下键入java -version
来检查当前版本并得到以下输出:
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,当我检查变量时,它如下:
我看到它已经指向java7 jdk了。这怎么可能以及如何运行java7?
更新
我想我找出了问题,但没有找到解决方案。第一个系统变量 - C:\ProgramData\Oracle\Java\javapath
导致此处出现问题,在给定路径中有java.exe
。它可能是我直接将java从java7升级到java8的产品。但是,如果我删除它,它会导致cmd中的错误。可以做些什么?
答案 0 :(得分:0)
首先,我们无法看到" PATH"用户变量部分下的变量。
我看到它已经针对java7 jdk了。这怎么可能
通常" JAVA_HOME"由apache tomcat service installer
设置,因为tomcat只能通过" JAVA_HOME"变量
以及如何运行java7?
在ruby和python之后的PATH变量中查找是否有jdk 1.8提到的任何地方。并用jdk 1.7路径替换它,或者你可以在PATH中引用JAVA_HOME为%JAVA_HOME%
eg: PATH = C:\Ruby....;%JAVA_HOME%\bin;
答案 1 :(得分:0)
你混合了两件事。 1. Java home:如果你试图回应JAVA_HOME,它将指向jdk1.7 ......正如你所提到的那样。许多程序/应用程序使用此env变量来定位java。 2.路径变量:这是可执行文件所在的位置。因此,如果您尝试运行某些程序/可执行文件,系统将尝试使用路径项列表来查找可执行文件。所以如果你想直接使用java,这应该指向jdk 7。
答案 2 :(得分:0)
经过数小时的研究,我发现了问题和解决方案,这非常简单。
由于我使用java通知升级到java8,因此已经将C:\ProgramData\Oracle\Java\javapath
输入到系统变量中,这些变量已经成为指向新jdk的指针。
为了使用java7,我只需要将jdk1.7指针放到顶部。