future versions of Elasticsearch will require Java 11; your Java version from [/usr/local/jdk1.8.0_1/jre] does not meet this requirement
使用ES7版本時,啟動或者執行ES命令,提示上面錯誤信息。這是由於ES7使用的高版本的jdk。如果不想升級服務的jdk,可以通過修改elasticsearch-env
配置文件,使用ES內置的jdk來解決上面的問題。
# now set the path to java
# 注釋掉原來的配置信息
#if [ ! -z "$JAVA_HOME" ]; then
# JAVA="$JAVA_HOME/bin/java"
# JAVA_TYPE="JAVA_HOME"
#else
# if [ "$(uname -s)" = "Darwin" ]; then
# # macOS has a different structure
# JAVA="$ES_HOME/jdk.app/Contents/Home/bin/java"
# else
# JAVA="$ES_HOME/jdk/bin/java"
# fi
# JAVA_TYPE="bundled jdk"
#fi
# 如何為新的配置信息
if [ ! -z "$JAVA_HOME" ]; then
JAVA="$ES_HOME/jdk/bin/java"
JAVA_TYPE="JAVA_HOME"
else
if [ "$(uname -s)" = "Darwin" ]; then
# macOS has a different structure
JAVA="$ES_HOME/jdk.app/Contents/Home/bin/java"
else
JAVA="$ES_HOME/jdk/bin/java"
fi
JAVA_TYPE="bundled jdk"
fi