[ 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

        

Reply via email to