FULL PRODUCT VERSION :
A DESCRIPTION OF THE PROBLEM :
According to JEP 223, the version format is:
$VNUM(-$PRE)?(\+$BUILD)?(-$OPT)?
Both PRE and OPT are alphanumeric, with OPT additionally allowing periods.
Since PRE, BUILD, and OPT are all optional, there is no way to distinguish a version identifier with no PRE or BUILD and an OPT that does not contain a period, and one with a PRE but no BUILD or OPT.
In other words, if the version identifier is "9-something", "something" could either be a pre release identifier or optional information. I don't see anything in the specification that distinguishes these two possibilities.
REPRODUCIBILITY :
This bug can be reproduced always.
A DESCRIPTION OF THE PROBLEM :
According to JEP 223, the version format is:
$VNUM(-$PRE)?(\+$BUILD)?(-$OPT)?
Both PRE and OPT are alphanumeric, with OPT additionally allowing periods.
Since PRE, BUILD, and OPT are all optional, there is no way to distinguish a version identifier with no PRE or BUILD and an OPT that does not contain a period, and one with a PRE but no BUILD or OPT.
In other words, if the version identifier is "9-something", "something" could either be a pre release identifier or optional information. I don't see anything in the specification that distinguishes these two possibilities.
REPRODUCIBILITY :
This bug can be reproduced always.
- relates to
-
JDK-8072379 CoreLibs: Implement jdk.Version
- Resolved
-
JDK-8144062 Move jdk.Version to java.lang.Runtime.Version
- Closed
-
JDK-8061493 JEP 223: New Version-String Scheme
- Closed