File tree Expand file tree Collapse file tree 1 file changed +6
-4
lines changed
junit-platform-commons/src/main/java/org/junit/platform/commons/util Expand file tree Collapse file tree 1 file changed +6
-4
lines changed Original file line number Diff line number Diff line change @@ -35,7 +35,7 @@ final class CloseablePath implements Closeable {
3535 private static final String FILE_URI_SCHEME = "file" ;
3636 static final String JAR_URI_SCHEME = "jar" ;
3737 private static final String JAR_FILE_EXTENSION = ".jar" ;
38- private static final String JAR_URI_SEPARATOR = "!" ;
38+ private static final String JAR_URI_SEPARATOR = "!/ " ;
3939
4040 private static final Closeable NULL_CLOSEABLE = () -> {
4141 };
@@ -53,9 +53,11 @@ static CloseablePath create(URI uri) throws URISyntaxException {
5353
5454 static CloseablePath create (URI uri , FileSystemProvider fileSystemProvider ) throws URISyntaxException {
5555 if (JAR_URI_SCHEME .equals (uri .getScheme ())) {
56- String [] parts = uri .toString ().split (JAR_URI_SEPARATOR );
57- String jarUri = parts [0 ];
58- String jarEntry = parts [1 ];
56+ // Parsing: jar:<url>!/[<entry>]
57+ String uriString = uri .toString ();
58+ int lastJarUriSeparator = uriString .lastIndexOf (JAR_URI_SEPARATOR );
59+ String jarUri = uriString .substring (0 , lastJarUriSeparator );
60+ String jarEntry = uriString .substring (lastJarUriSeparator + 1 );
5961 return createForJarFileSystem (new URI (jarUri ), fileSystem -> fileSystem .getPath (jarEntry ),
6062 fileSystemProvider );
6163 }
You can’t perform that action at this time.
0 commit comments