@Test public void test() throws FileSystemException, URISyntaxException { DefaultFileSystemManager fsm = new DefaultFileSystemManager(); fsm.setDefaultProvider(new UrlFileProvider()); fsm.addProvider("file", new DefaultLocalFileProvider()); fsm.addProvider("jar", new FastJarFileProvider()); fsm.init(); String jarUri = getClass().getResource("/jarfiletest.jar").toURI().toString(); FileObject object = fsm.resolveFile("jar:" + jarUri + "!/r/"); assertThat(object.exists(), equalTo(true)); assertThat(object.getType(), equalTo(FileType.FOLDER)); FileObject[] children = object.getChildren(); assertThat(children.length, equalTo(1)); assertThat(children[0].getName().getBaseName(), equalTo("library")); assertThat(children[0].getType(), equalTo(FileType.FOLDER)); object = fsm.resolveFile("jar:" + jarUri + "!/r/library/survey"); assertThat(object.getType(), equalTo(FileType.FOLDER)); assertThat(object.getChildren().length, equalTo(4)); }