这篇文章将为大家详细讲解有关安装多版本的JDK出现问题怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一,背景1,原来安装了jdk1.8.0_91,因为要在本地跑服务端程序,需要1.7版本的,需要安装的是1.7.0_79;2,原来的安装目录:D:Program Files (x64)javajdk1.8.0_91D:Program Files (x64)javajre1.8.0_913,低版本的安装目录:D:Program Files (x64)javajdk1.7.0_79D:Program Files (x64)javajre7也就是所有的jdk和jre是安装在同一个目录下的。4,配置JAVA_HOME、CLASSPATH和Path路径JAVA_HOME=D:Program Files (x64)javajdk1.7.0_79CLASSPATH=.;%JAVA_HOME%libdt.jar;%JAVA_HOME% libtools.jar;Path=C:ProgramDataOracleJavajavapath;C:Program Files (x86)NVIDIA CorporationPhysXCommon;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program FilesLenovoFingerprint Manager Pro;D:Program FilesVanDyke SoftwareClients;D:Program FilesGitcmd;D:Program Files (x64)apache-maven-3.3.9bin;D:Program Files (x64)nodejs;D:Program FilesOpenbin;%JAVA_HOME%bin;%JAVA_HOME%jrebin;二,问题现象描述与问题排查:1,配置好上述环境变量之后,在命令提示符窗口中输入java -version,出现的版本还是1.8.0_91,按照网上说的方法改了path变量值如下,也就是把%JAVA_HOME%那两个提到最前面,但是这样子之后输入java -version问题依旧:Path=%JAVA_HOME%bin;%JAVA_HOME%jrebin;C:ProgramDataOracleJavajavapath;C:Program Files (x86)NVIDIA CorporationPhysXCommon;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program FilesLenovoFingerprint Manager Pro;D:Program FilesVanDyke SoftwareClients;D:Program FilesGitcmd;D:Program Files (x64)apache-maven-3.3.9bin;D:Program Files (x64)nodejs;D:Program FilesOpenbin;2,然后我做的尝试就是将D:Program Files (x64)javajdk1.8.0_91D:Program Files (x64)javajre1.8.0_91两个文件夹转移到D:Program Files (x64)java1目录下,也就是将其转移出原来的路径,然后再执行java -version提示“系统找不到文件c:programdataoracleJavajavapathjava.exe”,原来问题出在这个目录下;经过排查发现,这个目录是个隐藏目录,可以通过命令提示符窗口进入3,经过排查发现,原来C:ProgramDataOracleJavajavapath目录下是有3个链接文件;分别指向D:Program Files (x64)javajre1.8.0_91binjava.exeD:Program免费主机域名 Files (x64)javajre1.8.0_91binjavaw.exeD:Program Files (x64)javajre1.8.0_91binjavaws.exe然后我将三个链接文件删除,注意:(1)必须先删除这三个链接文件然后才可以创建;(2)下面命令执行的时候,当下的工作目录是:C:ProgramDataOracleJavajavapath创建链接文件:在命令提示符窗口中依次执行以下命令:mklink java.exe “D:Program Files (x64)javajre7binjava.exe”mklink java.exe “D:Program Files (x64)javajre7binjavaw.exe”mklink java.exe “D:Program Files (x64)javajre7binjavaws.exe”,4,创建好之后,再执行java -version命令提示:”Error: Registry key ‘SoftwareJavaSoftJava Runtime Environment’CurrentVersion’has value ‘1.8’, but ‘1.7’ is required.Error: could not find java.dllError: Could not find Java SE Runtime Environment.”显然这里是注册表的问题,只需要修改CurrentVersion键的值就可以了:打开注册表编辑器:在开始的“运行”输入regedit命令,回车让后一层层往下找:最终选中Java Runtime EnvironmentHKEY_LOCAL_MACHINE—>SOFTWARE—>JavaSoft—>Java Runtime Environment这里可以看到,右边窗口中的名称一列有个CurrentVersion,双击CurrentVersio免费主机域名n,进入编辑窗口;修改好之后点击“确定”即可。到此再回到命令提示符窗口,输入java -version命令,一切正常;5,但是后来又打开了命令提示符窗口,输入java命令报错如下:确认javapath目录下的链接文件没有问题,JAVA_HOME=D:Program Files (x64)javajdk1.7.0_79也没有问题,后来想到自己之前把PATH变量里的C:ProgramDataOracleJavajavapath;给删掉了,于是修改回来如下,问题得到解决,最终的PATH为:PATH=C:ProgramDataOracleJavajavapath;%JAVA_HOME%bin;%JAVA_HOME%jrebin;C:Program Files (x86)NVIDIA CorporationPhysXCommon;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;C:Program FilesLenovoFingerprint Manager Pro;D:Program FilesVanDyke SoftwareClients;D:Program FilesGitcmd;D:Program Files (x64)apache-maven-3.3.9bin;D:Program Files (x64)nodejs;D:Program FilesOpenbin;最终执行命令java -version结果如下,正常。关于“安装多版本的JDK出现问题怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
这篇文章将为大家详细讲解有关Oracle EM agent如何删除,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、要先停服务端的agent $ emctl stop agent2、在EM端删除主机注册信息 $ emclil…