|
Relates :
|
|
|
Relates :
|
1) Runtime.Version spec says regarding $VNUM format:
"The format is: ^[1-9][0-9]*(((\.0)*\.[1-9][0-9]*)*)*$"
There is "$" in the end of $VNUM. "$" is end of line template.
However, the following code will throw IllegalArgumentException:
Version.parse("1.1.1" + System.lineSeparator());
Seems this is the spec problem and the template should be updated to the same but without "$" in the end.
2) According to the current spec the template for the version string is
$VNUM(-$PRE)?(\+($BUILD)?(-$OPT)?)?
There is no words regarding the case when $PRE and $OPT is used without $BUILD or when "+" is used without $BUILD and $OPT.
However, the following code will throw IllegalArgumentException:
- Version.parse("1.1.1-ea+--abc");
- Version.parse("1.1.1-ea+");
Seems this is the spec problem and the spec need to be supplemented with exception cases.