}
try {
original = original.getCanonicalFile();
ShellScript ss = new ShellScript("ln -s " + original + " " + out);
ss.run();
ss.waitFor();
String err = ss.getError();
if (!Utils.isBlank(err)) {
if (overwrite && err.contains("File exists")) {
// this can happen if the sym-link is to a non-existent file
// File.exists() returns false for sym-links to non-existent