String (@NotNull Path basePath, @NotNull FilePath filePath) { try { Path path = filePath.getIOFile().toPath(); if (!path.isAbsolute()) return filePath.getPath(); return basePath.relativize(path).toString().replace(File.separatorChar, '/'); } catch (IllegalArgumentException e) { return filePath.getPath(); } }