直接雙擊elasticsearch.bat可以成功啟動,注冊成服務后就啟動失敗
從網上查找問題,發現是jdk版本的問題,用ES自帶的jdk就可以啟動成功。
默認ES會先找JAVA_HOME環境變量,如果沒配置就使用ES自帶的jdk
以下是解決辦法:
找到elasticsearch-env.bat
中的
1 if "%JAVA_HOME%" == "" ( 2 set JAVA="%ES_HOME%\jdk\bin\java.exe" 3 set JAVA_HOME="%ES_HOME%\jdk" 4 set JAVA_TYPE=bundled jdk 5 ) else ( 6 set JAVA="%JAVA_HOME%\bin\java.exe" 7 set JAVA_TYPE=JAVA_HOME 8 rem )
修改為:
set JAVA="%ES_HOME%\jdk\bin\java.exe" set JAVA_HOME="%ES_HOME%\jdk" set JAVA_TYPE=bundled jdk
最后重新注冊windows服務,啟動成功