检查Java版本是否大于Java中的某个迭代?

时间:2018-07-05 17:06:50

标签: java version apache-commons apache-commons-lang3

我希望检查用户的Java版本是否至少为1.8.0_171。我的意思是特定的迭代或更高版本(例如1.8.0_151)将无法工作。

我原本打算使用org.apache.commons.lang3.SystemUtils的isJavaVersionAtLeast(JavaVersion requiredVersion)方法,但是似乎您无法指定迭代编号。

基于此以及Java不断变化的表示Java版本号的方式(例如1.8到9),什么是在Java程序中检查用户Java版本的最佳方法?

编辑:

这被标记为pandas的副本;但是,我认为这是不同的,因为它要求更改Java版本的显示格式,因此询问如何将Java版本与特定版本进行比较。

1 个答案:

答案 0 :(得分:2)

即使更改了版本,我仍然认为解决方案仍然像使用以下布尔表达式一样简单:

"1.8.0_171".compareTo(System.getProperty("java.version")) <= 0

如果用户的java.version属性小于1.8.0_171,则上述表达式返回false,反之亦然。这也适用于使用"9""10"代替java.version属性。