maven-shared
maven-shared copied to clipboard
bug fix: silently fails overwriting symlinks
This is a fix MNG-6048
When A is an existing symlink to B, then createSymbolicLink(A,C) does neither overwrite A->B by A->C (as expected in analogy to the behavior of copy(A,C)) nor does it throw an exception nor does it return A->B to indicate the failure, but it actually "silently fails", i. e. it returns A->C!
This certainly is heavily problematic, unsymmetric to what copy(File,File) and Files.createSymbolicLink(Path,Path) do, and certainly unwanted and buggy behavior.
The solution is to delete any existing target before creating the symlic, hence copying the behavior of copy(File,File).