question: private void recursiveDelete ( final File f ) { if ( f . isDirectory ( ) ) { final File [ ] children = f . listFiles ( ) ; for ( int i = 0 ; i < children . length ; i ++ ) { recursiveDelete ( children [ i ] ) ; } } if ( log . isInfoEnabled ( ) ) log . info ( "Deleting: length=" + f . length ( ) + ", file=" + f ) ; if ( ! f . delete ( ) ) throw new RuntimeException ( "Could not remove: " + f ) ; }
target:  Recursively removes any files and subdirectories and then removes the file (or directory) itself.