code: public static String relativePath(File root, File node) throws IOException {
          String rootPath = root.getCanonicalPath();
          String nodePath = node.getCanonicalPath();
  
          return nodePath.substring(rootPath.length() + 1);
      }
docs: Computes the path name of a file node relative to a given root node.
  <br>
  If the root is {@code /home/cdlflex/custom-ahy} and the given node is
  {@code /home/cdlflex/custom-ahy/assembly/pom.xml}, the returned path name will be {@code assembly/pom.xml}.
  
  @param root the parent node
  @param node the file node to compute the relative path for
  @return the path of {@code node} relative to {@code root}
  @throws IOException when an I/O error occurs during resolving the canonical path of the files