Improve usefulness of NotASymlinkException#getMessage. Note that the returned string can make its way into Bazel's printed error message.

RELNOTES: None
PiperOrigin-RevId: 240779338
diff --git a/src/main/java/com/google/devtools/build/lib/vfs/FileSystem.java b/src/main/java/com/google/devtools/build/lib/vfs/FileSystem.java
index 97e1933..abaa6b1 100644
--- a/src/main/java/com/google/devtools/build/lib/vfs/FileSystem.java
+++ b/src/main/java/com/google/devtools/build/lib/vfs/FileSystem.java
@@ -57,7 +57,7 @@
    */
   protected static final class NotASymlinkException extends IOException {
     public NotASymlinkException(Path path) {
-      super(path.toString());
+      super(path + " is not a symlink");
     }
   }
 
diff --git a/src/test/java/com/google/devtools/build/lib/vfs/SymlinkAwareFileSystemTest.java b/src/test/java/com/google/devtools/build/lib/vfs/SymlinkAwareFileSystemTest.java
index a7bce7b..c1726ba 100644
--- a/src/test/java/com/google/devtools/build/lib/vfs/SymlinkAwareFileSystemTest.java
+++ b/src/test/java/com/google/devtools/build/lib/vfs/SymlinkAwareFileSystemTest.java
@@ -354,7 +354,7 @@
       xFile.readSymbolicLink(); // not a link
       fail();
     } catch (NotASymlinkException e) {
-      assertThat(e).hasMessageThat().isEqualTo(xFile.toString());
+      assertThat(e).hasMessageThat().isEqualTo(xFile.toString() + " is not a symlink");
     }
 
     try {