docs: @CheckForNull
      public static String resolveSymlink(@Nonnull File link) throws IOException {
          try {
              Path path = fileToPath(link);
              return Files.readSymbolicLink(path).toString();
          } catch (UnsupportedOperationException | FileSystemException x) {
              // no symlinks on this platform (windows?),
              // or not a link (// Thrown ("Incorrect function.") on JDK 7u21 in Windows 2012 when called on a non-symlink,
              // rather than NotLinkException, contrary to documentation. Maybe only when not on NTFS?) ?
              return null;
          } catch (IOException x) {
              throw x;
          } catch (Exception x) {
              throw new IOException(x);
          }
      }