[ http://jira.codehaus.org/browse/MSUREFIRE-148?page=all ]
Jeremy Boynes updated MSUREFIRE-148:
------------------------------------
Attachment: urlEncode.patch
Patch for encoding the URL under 1.3
I don't have that version to hand but I believe it will build/run in that
environment.
The paths are Windows format but I tested it on OSX without problem (they are
never opened).
> SurefireBooter can initialize classloader with badly formed URLs
> ----------------------------------------------------------------
>
> Key: MSUREFIRE-148
> URL: http://jira.codehaus.org/browse/MSUREFIRE-148
> Project: Maven 2.x Surefire Plugin
> Issue Type: Bug
> Reporter: Jeremy Boynes
> Attachments: urlEncode.patch
>
>
> In SurefireBooter.createClassLoader() the path is converted to a URL using
> File f = new File( url );
> urls.add( f.toURL() );
> File.toURL does not perform URL encoding so the resulting URL may contain
> invalid characters. This is an issue on Windows machines where the default
> maven repository is in "C:\Documents and Settings\user\.m2\..." (the filename
> contains spaces). If a test accesses a resource that is loaded from a
> dependency jar then the URL returned to that test is malformed.
> With JDK 1.4 this can be fixed using
> urls.add( f.toURI().toURL() );
> as toURI() does encode the path. If surefire still needs to run under pre-1.4
> JVMs this would need to be explicitly encoded. I'm willing to supply a patch
> for that if wanted.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira