maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GitBox <...@apache.org>
Subject [GitHub] jglick commented on a change in pull request #197: SUREFIRE-1588 Patch (Java7)
Date Thu, 01 Nov 2018 17:51:02 GMT
jglick commented on a change in pull request #197: SUREFIRE-1588 Patch (Java7)
URL: https://github.com/apache/maven-surefire/pull/197#discussion_r230134884
 
 

 ##########
 File path: maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/JarManifestForkConfiguration.java
 ##########
 @@ -111,7 +114,17 @@ private File createJar( @Nonnull List<String> classPath, @Nonnull
String startCl
             for ( Iterator<String> it = classPath.iterator(); it.hasNext(); )
             {
                 File file1 = new File( it.next() );
-                String uri = file1.toURI().toASCIIString();
+                String uri;
+                try
+                {
+                    uri = URI.create( parent.relativize( file1.toPath() ).toString() ).toASCIIString();
 
 Review comment:
   There is a reason I suggested the three-arg `URI` constructor rather than `create`. You
want to _construct_ a URI from a raw path, not _parse_ a URI.
   
   ```
   jshell> URI.create("../../a b/c.jar")
   |  java.lang.IllegalArgumentException thrown: Illegal character in path at index 7: ../../a
b/c.jar
   |        at URI.create (URI.java:883)
   |        at (#6:1)
   
   jshell> new URI(null, "../../a b/c.jar", null)
   $7 ==> ../../a%20b/c.jar
   ```

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

Mime
View raw message