Github user afs commented on a diff in the pull request: https://github.com/apache/jena/pull/459#discussion_r209422540 --- Diff: jena-base/src/main/java/org/apache/jena/atlas/io/IO.java --- @@ -364,4 +369,31 @@ public static String uniqueFilename(String directory, String base, String ext) { return null ; } } + + /** Delete everything from a {@code Path} start point, including the path itself. + * This function works on files or directories. + * This function does not follow symbolic links. + */ + public static void deleteAll(Path start) { --- End diff -- A symbolic link should be deleted, that is, the entry in the parent directory is removed, and not the thing it points to. c.f. `rm`. The idea being if you put in a symbolic link, the target may be pointed to from elsewhere as well. I had looked at FileUtils as well, I think it deletes the link and not the target (it calls `File.delete`).
---