主要提供一種解決啓動zKServer.cmd閃退的解決思路,遇到類似的問題,都可以採用以下的思路解決。
原因定位
編輯zkServer.cmd文件,在末尾添加pause
。這樣運行出錯就不會退出,會提示錯誤信息,方便找到原因。例如原因如下:
圖中顯示Invalid config, exiting abnormally
無效的配置文件,初步判斷可能是配置的問題。
排查
到zookeeper目錄中找conf\zoo.cfg
,沒有找到此文件,但找到zoo_sample.cfg
,文件部分內容如下圖。這個是一些zookeeper服務器的參數配置樣板,zookeeper的配置可以參考這個文件。
解決
以上分析,需要重要配置zoo.cfg
的路徑文件。
編輯zkEnv.cmd
文件(該文件是環境配置,如文件夾目錄等。一般啓動出錯是在由於環境變量配置導致相關文件查找不到,只需要在其中配置相關變量即可),改變ZOOCFG
的值爲%ZOOCFGDIR%\zoo_sample.cfg
即可。
set CLASSPATH=%ZOOCFGDIR%
REM make it work in the release
SET CLASSPATH=%~dp0..\*;%~dp0..\lib\*;%CLASSPATH%
REM make it work for developers
SET CLASSPATH=%~dp0..\build\classes;%~dp0..\build\lib\*;%CLASSPATH%
set ZOOCFG=%ZOOCFGDIR%\zoo_sample.cfg
@REM setup java environment variables
if not defined JAVA_HOME (
echo Error: JAVA_HOME is not set.
goto :eof
)