Index: src/main/java/org/apache/maven/shared/release/versions/DefaultVersionInfo.java =================================================================== --- src/main/java/org/apache/maven/shared/release/versions/DefaultVersionInfo.java (revision 902110) +++ src/main/java/org/apache/maven/shared/release/versions/DefaultVersionInfo.java (working copy) @@ -111,6 +111,10 @@ public static final Pattern ALTERNATE_PATTERN = Pattern.compile( "^(SNAPSHOT|[a-zA-Z]+[_-]SNAPSHOT)" // for SNAPSHOT releases only (possible versions include: trunk-SNAPSHOT or SNAPSHOT) ); + + public static final Pattern ALTERNATE2_PATTERN = Pattern.compile( + "^((SNAPSHOT)|([a-zA-Z_0-9\\-]+[_-]SNAPSHOT)|([a-zA-Z_0-9\\-])|([a-zA-Z0-9]*))" // for SNAPSHOT releases only (possible versions include: trunk-SNAPSHOT or SNAPSHOT) + ); /** * Constructs this object and parses the supplied version string. @@ -133,6 +137,8 @@ buildSeparator = null; return; } + + Matcher matcher2 = ALTERNATE2_PATTERN.matcher( strVersion ); Matcher m = STANDARD_PATTERN.matcher( strVersion ); if ( m.matches() ) @@ -166,6 +172,14 @@ buildSpecifier = nullIfEmpty( m.group( ANNOTATION_INDEX ) ); } } + else if (matcher2.matches()){ + // TODO: hack because it didn't support "myb_2-SNAPSHOT" + annotation = null; + digits = null; + buildSpecifier = version; + buildSeparator = null; + return; + } else { throw new VersionParseException( "Unable to parse the version string: \"" + version + "\"" );