问题
Apache 的 drill 执行启动命令 drill-embedded
报错: ERROR: Java 1.7 or later is required to run Apache Drill.
通过 java -version
命令查看版本信息如下:
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
解决办法
打开 drill 的 bin 目录下的 drill-config.sh
修改第 396 行为:
"$JAVA" -version 2>&1 | grep "version" | egrep -e "1/.4|1/.5|1/.6" > /dev/null
原因
问题出在 dril 的 drill-config.sh
脚本在正则匹配 jdk version 时,没有对小数的 ‘.’ 进行转义。