This fix doesn't work for the case when url is set to a value like "http://jira.codehaus.org/"
Because it will remove the last "/" and few lines below it tries to extract url again based on the last index for "/" and the url extracted in that case is "http:/"
54 if ( url.endsWith( "/" ) )
55
{
56 // MCHANGES-218
57 url = url.substring( 0, url.lastIndexOf( '/' ) );
58 }
.....................
72 String jiraUrl = url.substring( 0, url.lastIndexOf( '/' ) );
Easy to test with a quick unit test and a different value for issueManagementUrl:
Map<String, String> jiraUrlAndProjectId = getJiraUrlAndProjectId("http://jira.codehaus.org/");
assertEquals("http://jira.codehaus.org", jiraUrlAndProjectId.get("url"));
This is a known limitation that is somewhat documented in the "Linking to Your Issue Management System" section at http://maven.apache.org/plugins/maven-changes-plugin/usage.html
The documentation is of course in the wrong place for your use case.
I'll take a look and see if I can try to fix the parsing routine. If now at least the docs should be improved to highlight this better.