小白帶你解決Windows上安裝Hadoop所遇之坑
阿新 • • 發佈:2019-01-06
一、坑一
Error: JAVA_HOME is incorrectly set.
Please update D:\javatemps\hadoop-2.7.2\conf\hadoop-env.cmd
提升我的java環境搭建錯誤,可是剛剛執行如此命令還可以:
java -version
解決方法
1、如果你的JDK安裝路徑是預設的在C盤的“Program files”下,那麼在你的“環境變數”中將JDK的路徑改為:
C:\PROGRA~1\Java\jdk1.8.0_181
改過之後,重新執行hadoop -version
,此時,即可成功!
2、如果你的JDK安裝路徑不是在預設的C盤的“Program files”下,比如在D盤中的“Program files”下,那麼在你的“環境變數”中將JDK的路徑改為:
"D:\Program files"\Java\jdk1.8.0_181
改過之後,重新執行hadoop -version
命令,此時,應該可以成功!如果不可以成功,按照第一個將中間的空格去掉,即將你的“Program files”資料夾的名字中的空格去掉。
二、坑二
Error: could not open `D:\Program files\Java\jre7\lib\amd64\jvm.cfg'
JAVA_HOME的環境變數值根本不是這個目錄,到CMD命令視窗下,用echo %JAVA_HOME%,也顯示正常
“百思不得其解”,問了度娘後終於知道了原因,原來是因為JDK如果執行過安裝程式後,會在HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_45\MSI\ 留下印記,裡面有一項INSTALLDIR記錄的還是當時安裝的舊路徑,如下圖:
解決方法:
為了清淨,直接把HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\這個登錄檔分支給刪除了,然後到cmd下,執行java -version,又出現另一個錯誤:
C:\Users\jimmy.yang>java -version
Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
繼續研究了一下,終於找到了答案:
Path系統環境變數中,把%JAVA_HOME%\bin調整到最前面,如圖所示:
Finally,世界終於恢復原來的秩序,宇宙終於恢復和平了,終於將問題解決了!