新聞中心
這篇文章將為大家詳細(xì)講解有關(guān)安裝多版本的JDK出現(xiàn)問(wèn)題怎么辦,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),涪陵企業(yè)網(wǎng)站建設(shè),涪陵品牌網(wǎng)站建設(shè),網(wǎng)站定制,涪陵網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,涪陵網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
一,背景
1,原來(lái)安裝了jdk1.8.0_91,因?yàn)橐诒镜嘏芊?wù)端程序,需要1.7版本的,需要安裝的是1.7.0_79;
2,原來(lái)的安裝目錄:
D:\Program Files (x64)\java\jdk1.8.0_91
D:\Program Files (x64)\java\jre1.8.0_91
3,低版本的安裝目錄:
D:\Program Files (x64)\java\jdk1.7.0_79
D:\Program Files (x64)\java\jre7
也就是所有的jdk和jre是安裝在同一個(gè)目錄下的。
4,配置JAVA_HOME、CLASSPATH和Path路徑
JAVA_HOME=D:\Program Files (x64)\java\jdk1.7.0_79
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME% \lib\tools.jar;
Path=C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Fingerprint Manager Pro\;D:\Program Files\VanDyke Software\Clients\;D:\Program Files\Git\cmd;D:\Program Files (x64)\apache-maven-3.3.9\bin;D:\Program Files (x64)\nodejs\;D:\Program Files\Open×××\bin;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
二,問(wèn)題
現(xiàn)象描述與問(wèn)題排查:
1,配置好上述環(huán)境變量之后,在命令提示符窗口中輸入java -version,出現(xiàn)的版本還是1.8.0_91,按照網(wǎng)上說(shuō)的方法改了path變量值如下,也就是把%JAVA_HOME%那兩個(gè)提到最前面,但是這樣子之后輸入java -version問(wèn)題依舊:
Path=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Fingerprint Manager Pro\;D:\Program Files\VanDyke Software\Clients\;D:\Program Files\Git\cmd;D:\Program Files (x64)\apache-maven-3.3.9\bin;D:\Program Files (x64)\nodejs\;D:\Program Files\Open×××\bin;
2,然后我做的嘗試就是將
D:\Program Files (x64)\java\jdk1.8.0_91
D:\Program Files (x64)\java\jre1.8.0_91
兩個(gè)文件夾轉(zhuǎn)移到D:\Program Files (x64)\java1目錄下,也就是將其轉(zhuǎn)移出原來(lái)的路徑,然后再執(zhí)行java -version提示
“系統(tǒng)找不到文件c:\programdata\oracle\Java\javapath\java.exe”,原來(lái)問(wèn)題出在這個(gè)目錄下;
經(jīng)過(guò)排查發(fā)現(xiàn),這個(gè)目錄是個(gè)隱藏目錄,可以通過(guò)命令提示符窗口進(jìn)入
3,經(jīng)過(guò)排查發(fā)現(xiàn),原來(lái)C:\ProgramData\Oracle\Java\javapath目錄下是有3個(gè)鏈接文件;分別指向
D:\Program Files (x64)\java\jre1.8.0_91\bin\java.exe
D:\Program Files (x64)\java\jre1.8.0_91\bin\javaw.exe
D:\Program Files (x64)\java\jre1.8.0_91\bin\javaws.exe
然后我將三個(gè)鏈接文件刪除,
注意:
(1)必須先刪除這三個(gè)鏈接文件然后才可以創(chuàng)建;
(2)下面命令執(zhí)行的時(shí)候,當(dāng)下的工作目錄是:
C:\ProgramData\Oracle\Java\javapath
創(chuàng)建鏈接文件:
在命令提示符窗口中依次執(zhí)行以下命令:
mklink java.exe "D:\Program Files (x64)\java\jre7\bin\java.exe"
mklink java.exe "D:\Program Files (x64)\java\jre7\bin\javaw.exe"
mklink java.exe "D:\Program Files (x64)\java\jre7\bin\javaws.exe",
4,創(chuàng)建好之后,再執(zhí)行java -version命令提示:
"Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.”
顯然這里是注冊(cè)表的問(wèn)題,只需要修改CurrentVersion鍵的值就可以了:
打開(kāi)注冊(cè)表編輯器:在開(kāi)始的“運(yùn)行”輸入regedit命令,回車(chē)
讓后一層層往下找:最終選中Java Runtime Environment
HKEY_LOCAL_MACHINE--->SOFTWARE--->JavaSoft--->Java Runtime Environment
這里可以看到,右邊窗口中的名稱一列有個(gè)CurrentVersion,雙擊CurrentVersion,進(jìn)入編輯窗口;
修改好之后點(diǎn)擊“確定”即可。
到此再回到命令提示符窗口,輸入java -version命令,一切正常;
5,但是后來(lái)又打開(kāi)了命令提示符窗口,輸入java命令報(bào)錯(cuò)如下:
確認(rèn)javapath目錄下的鏈接文件沒(méi)有問(wèn)題,JAVA_HOME=D:\Program Files (x64)\java\jdk1.7.0_79也沒(méi)有問(wèn)題,
后來(lái)想到自己之前把PATH變量里的C:\ProgramData\Oracle\Java\javapath;給刪掉了,于是修改回來(lái)如下,問(wèn)題得到解決,
最終的PATH為:
PATH=C:\ProgramData\Oracle\Java\javapath;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Fingerprint Manager Pro\;D:\Program Files\VanDyke Software\Clients\;D:\Program Files\Git\cmd;D:\Program Files (x64)\apache-maven-3.3.9\bin;D:\Program Files (x64)\nodejs\;D:\Program Files\Open×××\bin;
最終執(zhí)行命令java -version結(jié)果如下,正常。
關(guān)于“安裝多版本的JDK出現(xiàn)問(wèn)題怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
分享文章:安裝多版本的JDK出現(xiàn)問(wèn)題怎么辦
鏈接分享:http://biofuelwatch.net/article/gpddsc.html