如何从 bash 脚本检查 Java 是否可用(在 PATH 中或通过 JAVA_HOME)并确保版本至少为 1.5?
原文由 Aaron Digulla 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何从 bash 脚本检查 Java 是否可用(在 PATH 中或通过 JAVA_HOME)并确保版本至少为 1.5?
原文由 Aaron Digulla 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以通过以下方式获取 java 版本:
JAVA_VER=$(java -version 2>&1 | sed -n ';s/.* version "\(.*\)\.\(.*\)\..*".*/\1\2/p;')
it will give you 16
for java like 1.6.0_13
, 15
for version like 1.5.0_17
and 110 for openjdk 11.0.6 2020-01-14 LTS
.
所以你可以很容易地在 shell 中比较它:
[ "$JAVA_VER" -ge 15 ] && echo "ok, java is 1.5 or newer" || echo "it's too old..."
更新: 如评论中所述,此代码应与 openjdk 和 JAVA_TOOL_OPTIONS 一起正常工作。
原文由 Michał Šrajer 发布,翻译遵循 CC BY-SA 4.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
也许是这样的: