/** * Parse the given version number string into a version number object * * @param versionNumberString * version number string * @return version number object or null if not parseable */ public static MavenVersionNumber parse(String versionNumberString) { if (versionNumberString == null) { return null; } Matcher m = snapshotVersion.matcher(versionNumberString); if (!m.matches()) { return null; } MavenVersionNumber versionNumber = new MavenVersionNumber(); versionNumber.fullVersion = versionNumberString; versionNumber.major = Integer.parseInt(m.group(1)); versionNumber.minor = Integer.parseInt(m.group(2)); versionNumber.patch = Integer.parseInt(m.group(3)); String postfix = m.group(4); if (postfix != null) { postfix = postfix.replaceAll("-SNAPSHOT", ""); versionNumber.postfix = postfix; } versionNumber.isSnapshot = versionNumberString.endsWith("-SNAPSHOT"); return versionNumber; }