Fully qualify class names in javadoc when there is no other reference.

This removes the need for the class to actually be imported, thus removing potential dependencies.

PiperOrigin-RevId: 305259489
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java
index 3cd6157..1000d58 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionValue.java
@@ -26,7 +26,6 @@
 import com.google.devtools.build.lib.actions.ArtifactOwner;
 import com.google.devtools.build.lib.actions.FileArtifactValue;
 import com.google.devtools.build.lib.actions.FileStateType;
-import com.google.devtools.build.lib.actions.FileValue;
 import com.google.devtools.build.lib.actions.FilesetOutputSymlink;
 import com.google.devtools.build.lib.collect.nestedset.NestedSet;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
@@ -136,7 +135,8 @@
 
   /**
    * @return The data for each non-middleman output of this action, in the form of the {@link
-   *     FileValue} that would be created for the file if it were to be read from disk.
+   *     com.google.devtools.build.lib.actions.FileValue} that would be created for the file if it
+   *     were to be read from disk.
    */
   @Nullable
   public FileArtifactValue getArtifactValue(Artifact artifact) {
@@ -158,9 +158,10 @@
   }
 
   /**
-   * @return The map from {@link Artifact}s to the corresponding {@link FileValue}s that would be
-   *     returned by {@link #getArtifactValue}. Primarily needed by {@link FilesystemValueChecker},
-   *     also called by {@link ArtifactFunction} when aggregating a {@link TreeArtifactValue}.
+   * @return The map from {@link Artifact}s to the corresponding {@link
+   *     com.google.devtools.build.lib.actions.FileValue}s that would be returned by {@link
+   *     #getArtifactValue}. Primarily needed by {@link FilesystemValueChecker}, also called by
+   *     {@link ArtifactFunction} when aggregating a {@link TreeArtifactValue}.
    */
   Map<Artifact, FileArtifactValue> getAllFileValues() {
     return artifactData;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/CollectPackagesUnderDirectoryValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/CollectPackagesUnderDirectoryValue.java
index 6be671b..f95cac8 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/CollectPackagesUnderDirectoryValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/CollectPackagesUnderDirectoryValue.java
@@ -21,7 +21,6 @@
 import com.google.devtools.build.lib.cmdline.RepositoryName;
 import com.google.devtools.build.lib.concurrent.BlazeInterners;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
-import com.google.devtools.build.lib.pkgcache.RecursivePackageProvider;
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.lib.vfs.PathFragment;
 import com.google.devtools.build.lib.vfs.RootedPath;
@@ -35,8 +34,9 @@
  * The value computed by {@link CollectPackagesUnderDirectoryFunction}. Contains a mapping for all
  * its non-excluded directories to whether there are packages or error messages beneath them.
  *
- * <p>This value is used by {@link RecursivePackageProvider#streamPackagesUnderDirectory} to help it
- * traverse the graph and find the set of packages under a directory, recursively by {@link
+ * <p>This value is used by {@link
+ * com.google.devtools.build.lib.pkgcache.RecursivePackageProvider#streamPackagesUnderDirectory} to
+ * help it traverse the graph and find the set of packages under a directory, recursively by {@link
  * CollectPackagesUnderDirectoryFunction} which computes a value for a directory by aggregating
  * results calculated from its subdirectories, and by {@link
  * PrepareDepsOfTargetsUnderDirectoryFunction} which uses this value to find transitive targets to
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/CollectTestSuitesInPackageValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/CollectTestSuitesInPackageValue.java
index 7b6cc2c..d0989a8 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/CollectTestSuitesInPackageValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/CollectTestSuitesInPackageValue.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 
 /** Dummy {@link SkyValue} for {@link CollectTestSuitesInPackageFunction}. */
@@ -38,7 +37,10 @@
     return Key.create(packageId);
   }
 
-  /** {@link SkyKey} argument. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/CollectTestSuitesInPackageValue.java used only in
+   * javadoc: com.google.devtools.build.skyframe.SkyKey} argument.
+   */
   @AutoCodec
   public static class Key extends AbstractSkyKey<PackageIdentifier> {
     private static final Interner<Key> interner = BlazeInterners.newWeakInterner();
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java
index 764aa97..a553da1 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetAndData.java
@@ -20,7 +20,6 @@
 import com.google.devtools.build.lib.analysis.ConfiguredTarget;
 import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
 import com.google.devtools.build.lib.packages.NoSuchTargetException;
-import com.google.devtools.build.lib.packages.Package;
 import com.google.devtools.build.lib.packages.Target;
 import com.google.devtools.build.skyframe.SkyFunction;
 import com.google.devtools.build.skyframe.SkyKey;
@@ -37,7 +36,7 @@
  *
  * <p>These objects are intended to be short-lived, never stored in Skyframe, since they pair three
  * heavyweight objects, a {@link ConfiguredTarget}, a {@link Target} (which holds a {@link
- * Package}), and a {@link BuildConfiguration}.
+ * com.google.devtools.build.lib.packages.Package}), and a {@link BuildConfiguration}.
  */
 public class ConfiguredTargetAndData {
   private final ConfiguredTarget configuredTarget;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
index 3512403..67e260b 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java
@@ -18,9 +18,11 @@
 import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
 import com.google.devtools.build.lib.cmdline.Label;
 import com.google.devtools.build.skyframe.SkyKey;
-import com.google.devtools.build.skyframe.SkyValue;
 
-/** A {@link SkyValue} for a {@link ConfiguredTarget}. */
+/**
+ * A {@link com/google/devtools/build/lib/skyframe/ConfiguredTargetValue.java used only in javadoc:
+ * com.google.devtools.build.skyframe.SkyValue} for a {@link ConfiguredTarget}.
+ */
 public interface ConfiguredTargetValue extends ConfiguredObjectValue {
   static SkyKey key(Label label, BuildConfiguration configuration) {
     return ConfiguredTargetKey.of(label, configuration);
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupValue.java
index f03f9a7..cfd3dfd 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ContainingPackageLookupValue.java
@@ -24,7 +24,6 @@
 import com.google.devtools.build.lib.vfs.Root;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 import javax.annotation.Nonnull;
 
@@ -105,7 +104,10 @@
     return message;
   }
 
-  /** {@link SkyKey} for {@code ContainingPackageLookupValue}. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/ContainingPackageLookupValue.java used only in
+   * javadoc: com.google.devtools.build.skyframe.SkyKey} for {@code ContainingPackageLookupValue}.
+   */
   @AutoCodec
   public static class Key extends AbstractSkyKey<PackageIdentifier> {
     private static final Interner<Key> interner = BlazeInterners.newWeakInterner();
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/EnvironmentBackedRecursivePackageProvider.java b/src/main/java/com/google/devtools/build/lib/skyframe/EnvironmentBackedRecursivePackageProvider.java
index c3abfdb..5b474ed 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/EnvironmentBackedRecursivePackageProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/EnvironmentBackedRecursivePackageProvider.java
@@ -30,7 +30,6 @@
 import com.google.devtools.build.lib.packages.Package;
 import com.google.devtools.build.lib.pkgcache.AbstractRecursivePackageProvider;
 import com.google.devtools.build.lib.pkgcache.PathPackageLocator;
-import com.google.devtools.build.lib.pkgcache.RecursivePackageProvider;
 import com.google.devtools.build.lib.rules.repository.RepositoryDirectoryValue;
 import com.google.devtools.build.lib.vfs.PathFragment;
 import com.google.devtools.build.lib.vfs.Root;
@@ -43,9 +42,9 @@
 import java.util.concurrent.atomic.AtomicBoolean;
 
 /**
- * A {@link RecursivePackageProvider} backed by an {@link Environment}. Its methods may throw {@link
- * MissingDepException} if the package values this depends on haven't been calculated and added to
- * its environment.
+ * A {@link com.google.devtools.build.lib.pkgcache.RecursivePackageProvider} backed by an {@link
+ * Environment}. Its methods may throw {@link MissingDepException} if the package values this
+ * depends on haven't been calculated and added to its environment.
  *
  * <p>This implementation never emits events through the {@link ExtendedEventHandler}s passed to its
  * methods. Instead, it emits events through its environment's {@link Environment#getListener()}.
@@ -62,8 +61,9 @@
 
   /**
    * Whether any of the calls to {@link #getPackage}, {@link #getTarget}, {@link #bulkGetPackages},
-   * or {@link RecursivePackageProvider#streamPackagesUnderDirectory} encountered a package in
-   * error.
+   * or {@link
+   * com.google.devtools.build.lib.pkgcache.RecursivePackageProvider#streamPackagesUnderDirectory}
+   * encountered a package in error.
    *
    * <p>The client of {@link EnvironmentBackedRecursivePackageProvider} may want to check this. See
    * comments in {@link #getPackage} for details.
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ExternalFilesHelper.java b/src/main/java/com/google/devtools/build/lib/skyframe/ExternalFilesHelper.java
index df04a16..511b72e 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ExternalFilesHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ExternalFilesHelper.java
@@ -14,8 +14,6 @@
 package com.google.devtools.build.lib.skyframe;
 
 import com.google.common.base.Preconditions;
-import com.google.devtools.build.lib.actions.FileStateValue;
-import com.google.devtools.build.lib.actions.FileValue;
 import com.google.devtools.build.lib.analysis.BlazeDirectories;
 import com.google.devtools.build.lib.cmdline.LabelConstants;
 import com.google.devtools.build.lib.cmdline.RepositoryName;
@@ -144,11 +142,14 @@
      * Bazel to assume these paths are immutable.
      *
      * <p>Note that {@link ExternalFilesHelper#maybeHandleExternalFile} is only used for {@link
-     * FileStateValue} and {@link DirectoryListingStateValue}, and also note that output files do
-     * not normally have corresponding {@link FileValue} instances (and thus also {@link
-     * FileStateValue} instances) in the Skyframe graph ({@link ArtifactFunction} only uses {@link
-     * FileValue}s for source files). But {@link FileStateValue}s for output files can still make
-     * their way into the Skyframe graph if e.g. a source file is a symlink to an output file.
+     * com.google.devtools.build.lib.actions.FileStateValue} and {@link DirectoryListingStateValue},
+     * and also note that output files do not normally have corresponding {@link
+     * com.google.devtools.build.lib.actions.FileValue} instances (and thus also {@link
+     * com.google.devtools.build.lib.actions.FileStateValue} instances) in the Skyframe graph
+     * ({@link ArtifactFunction} only uses {@link com.google.devtools.build.lib.actions.FileValue}s
+     * for source files). But {@link com.google.devtools.build.lib.actions.FileStateValue}s for
+     * output files can still make their way into the Skyframe graph if e.g. a source file is a
+     * symlink to an output file.
      */
     // TODO(nharmata): Consider an alternative design where we have an OutputFileDiffAwareness. This
     // could work but would first require that we clean up all RootedPath usage.
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkCycleUniquenessFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkCycleUniquenessFunction.java
index 590fce8..29fef4a 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkCycleUniquenessFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkCycleUniquenessFunction.java
@@ -19,15 +19,15 @@
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.lib.vfs.RootedPath;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
-import com.google.devtools.build.skyframe.SkyFunction;
 import com.google.devtools.build.skyframe.SkyFunctionName;
 import com.google.devtools.build.skyframe.SkyKey;
 
 /**
- * A {@link SkyFunction} that has the side effect of reporting a file symlink cycle. This is
- * achieved by forcing the same key for two logically equivalent cycles
- * (e.g. ['a' -> 'b' -> 'c' -> 'a'] and ['b' -> 'c' -> 'a' -> 'b']), and letting Skyframe do its
- * magic.
+ * A {@link com/google/devtools/build/lib/skyframe/FileSymlinkCycleUniquenessFunction.java used only
+ * in javadoc: com.google.devtools.build.skyframe.SkyFunction} that has the side effect of reporting
+ * a file symlink cycle. This is achieved by forcing the same key for two logically equivalent
+ * cycles (e.g. ['a' -> 'b' -> 'c' -> 'a'] and ['b' -> 'c' -> 'a' -> 'b']), and letting Skyframe do
+ * its magic.
  */
 public class FileSymlinkCycleUniquenessFunction
     extends AbstractChainUniquenessFunction<RootedPath> {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkInfiniteExpansionUniquenessFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkInfiniteExpansionUniquenessFunction.java
index c729465..56f6801 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkInfiniteExpansionUniquenessFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/FileSymlinkInfiniteExpansionUniquenessFunction.java
@@ -19,15 +19,16 @@
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.lib.vfs.RootedPath;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
-import com.google.devtools.build.skyframe.SkyFunction;
 import com.google.devtools.build.skyframe.SkyFunctionName;
 import com.google.devtools.build.skyframe.SkyKey;
 
 /**
- * A {@link SkyFunction} that has the side effect of reporting a file symlink expansion error
- * exactly once. This is achieved by forcing the same value key for two logically equivalent
- * expansion errors (e.g. ['a' -> 'b' -> 'c' -> 'a/nope'] and ['b' -> 'c' -> 'a' -> 'a/nope']),
- * and letting Skyframe do its magic.
+ * A {@link
+ * com/google/devtools/build/lib/skyframe/FileSymlinkInfiniteExpansionUniquenessFunction.java used
+ * only in javadoc: com.google.devtools.build.skyframe.SkyFunction} that has the side effect of
+ * reporting a file symlink expansion error exactly once. This is achieved by forcing the same value
+ * key for two logically equivalent expansion errors (e.g. ['a' -> 'b' -> 'c' -> 'a/nope'] and ['b'
+ * -> 'c' -> 'a' -> 'a/nope']), and letting Skyframe do its magic.
  */
 public class FileSymlinkInfiniteExpansionUniquenessFunction
     extends AbstractChainUniquenessFunction<RootedPath> {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/GraphBackedRecursivePackageProvider.java b/src/main/java/com/google/devtools/build/lib/skyframe/GraphBackedRecursivePackageProvider.java
index 5867051..133c7a6 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/GraphBackedRecursivePackageProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/GraphBackedRecursivePackageProvider.java
@@ -35,7 +35,6 @@
 import com.google.devtools.build.lib.packages.Package;
 import com.google.devtools.build.lib.pkgcache.AbstractRecursivePackageProvider;
 import com.google.devtools.build.lib.pkgcache.PathPackageLocator;
-import com.google.devtools.build.lib.pkgcache.RecursivePackageProvider;
 import com.google.devtools.build.lib.rules.repository.RepositoryDirectoryValue;
 import com.google.devtools.build.lib.vfs.PathFragment;
 import com.google.devtools.build.lib.vfs.Root;
@@ -49,9 +48,9 @@
 import java.util.logging.Logger;
 
 /**
- * A {@link RecursivePackageProvider} backed by a {@link WalkableGraph}, used by {@code
- * SkyQueryEnvironment} to look up the packages and targets matching the universe that's been
- * preloaded in {@code graph}.
+ * A {@link com.google.devtools.build.lib.pkgcache.RecursivePackageProvider} backed by a {@link
+ * WalkableGraph}, used by {@code SkyQueryEnvironment} to look up the packages and targets matching
+ * the universe that's been preloaded in {@code graph}.
  */
 @ThreadSafe
 public final class GraphBackedRecursivePackageProvider extends AbstractRecursivePackageProvider {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PackageIdentifierBatchingCallback.java b/src/main/java/com/google/devtools/build/lib/skyframe/PackageIdentifierBatchingCallback.java
index b731907..2bdb14f 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/PackageIdentifierBatchingCallback.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/PackageIdentifierBatchingCallback.java
@@ -18,13 +18,13 @@
 import com.google.devtools.build.lib.concurrent.ParallelVisitor.UnusedException;
 import com.google.devtools.build.lib.concurrent.ThreadSafeBatchCallback;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
-import com.google.devtools.build.lib.pkgcache.RecursivePackageProvider;
 import javax.annotation.concurrent.GuardedBy;
 
 /**
- * A callback for {@link RecursivePackageProvider#streamPackagesUnderDirectory} that buffers the
- * PackageIdentifiers it receives into fixed-size batches that it delivers to a supplied {@code
- * ThreadSafeBatchCallback<PackageIdentifier, RuntimeException>}.
+ * A callback for {@link
+ * com.google.devtools.build.lib.pkgcache.RecursivePackageProvider#streamPackagesUnderDirectory}
+ * that buffers the PackageIdentifiers it receives into fixed-size batches that it delivers to a
+ * supplied {@code ThreadSafeBatchCallback<PackageIdentifier, RuntimeException>}.
  *
  * <p>The final batch delivered to the delegate callback may be smaller than the fixed size; the
  * callback must be {@link #close() closed} to deliver this final batch.
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java
index b10acdb..3ea95e3 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/PackageValue.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.concurrent.BlazeInterners;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
 import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe;
-import com.google.devtools.build.lib.packages.BuildFileContainsErrorsException;
 import com.google.devtools.build.lib.packages.Package;
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
@@ -41,10 +40,11 @@
   }
 
   /**
-   * Returns the package. This package may contain errors, in which case the caller should throw
-   * a {@link BuildFileContainsErrorsException} if an error-free package is needed. See also
-   * {@link PackageErrorFunction} for the case where encountering a package with errors should shut
-   * down the build but the caller can handle packages with errors.
+   * Returns the package. This package may contain errors, in which case the caller should throw a
+   * {@link com.google.devtools.build.lib.packages.BuildFileContainsErrorsException} if an
+   * error-free package is needed. See also {@link PackageErrorFunction} for the case where
+   * encountering a package with errors should shut down the build but the caller can handle
+   * packages with errors.
    */
   public Package getPackage() {
     return pkg;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
index 87d70d3..d574869 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
@@ -34,7 +34,6 @@
 import com.google.devtools.build.skyframe.Injectable;
 import com.google.devtools.build.skyframe.SkyFunction;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 import java.util.Map;
 import java.util.UUID;
@@ -210,7 +209,10 @@
     }
   }
 
-  /** {@link SkyKey} for {@code PrecomputedValue}. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/PrecomputedValue.java used only in javadoc:
+   * com.google.devtools.build.skyframe.SkyKey} for {@code PrecomputedValue}.
+   */
   @AutoCodec
   public static class Key extends AbstractSkyKey<String> {
     private static final Interner<Key> interner = BlazeInterners.newWeakInterner();
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunction.java
index 9476606..5b74ed4 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePkgFunction.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.collect.nestedset.NestedSet;
 import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
 import com.google.devtools.build.lib.collect.nestedset.Order;
-import com.google.devtools.build.lib.packages.NoSuchPackageException;
 import com.google.devtools.build.lib.vfs.PathFragment;
 import com.google.devtools.build.lib.vfs.RootedPath;
 import com.google.devtools.build.skyframe.SkyFunction;
@@ -42,7 +41,10 @@
     this.directories = directories;
   }
 
-  /** N.B.: May silently throw {@link NoSuchPackageException} in nokeep_going mode! */
+  /**
+   * N.B.: May silently throw {@link com.google.devtools.build.lib.packages.NoSuchPackageException}
+   * in nokeep_going mode!
+   */
   @Override
   public SkyValue compute(SkyKey skyKey, Environment env) throws InterruptedException {
     return new MyTraversalFunction().visitDirectory((RecursivePkgKey) skyKey.argument(), env);
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RepositoryMappingValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/RepositoryMappingValue.java
index 0561a79..49ef694 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/RepositoryMappingValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/RepositoryMappingValue.java
@@ -22,7 +22,6 @@
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.skyframe.AbstractSkyKey;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 import java.util.Objects;
 
@@ -92,7 +91,10 @@
     return repositoryMapping.toString();
   }
 
-  /** {@link SkyKey} for {@link RepositoryMappingValue}. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/RepositoryMappingValue.java used only in javadoc:
+   * com.google.devtools.build.skyframe.SkyKey} for {@link RepositoryMappingValue}.
+   */
   @AutoCodec.VisibleForSerialization
   @AutoCodec
   static class Key extends AbstractSkyKey<RepositoryName> {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorWrappingWalkableGraph.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorWrappingWalkableGraph.java
index ba138fa..0f53041 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorWrappingWalkableGraph.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutorWrappingWalkableGraph.java
@@ -18,12 +18,15 @@
 import com.google.devtools.build.skyframe.NodeEntry;
 import com.google.devtools.build.skyframe.QueryableGraph;
 import com.google.devtools.build.skyframe.SkyKey;
-import com.google.devtools.build.skyframe.WalkableGraph;
 import java.util.HashMap;
 import java.util.Map;
 import javax.annotation.Nullable;
 
-/** {@link WalkableGraph} backed by a {@link SkyframeExecutor}. */
+/**
+ * {@link com/google/devtools/build/lib/skyframe/SkyframeExecutorWrappingWalkableGraph.java used
+ * only in javadoc: com.google.devtools.build.skyframe.WalkableGraph} backed by a {@link
+ * SkyframeExecutor}.
+ */
 public class SkyframeExecutorWrappingWalkableGraph extends DelegatingWalkableGraph {
 
   private SkyframeExecutorWrappingWalkableGraph(MemoizingEvaluator evaluator) {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java
index e60cf44..8f5df6f 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/TargetCompletionValue.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.analysis.TopLevelArtifactContext;
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 import java.util.Collection;
 import java.util.Set;
@@ -52,7 +51,10 @@
                 targetsToTest.contains(ct)));
   }
 
-  /** {@link SkyKey} for {@link TargetCompletionValue}. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/TargetCompletionValue.java used only in javadoc:
+   * com.google.devtools.build.skyframe.SkyKey} for {@link TargetCompletionValue}.
+   */
   @AutoCodec
   @AutoValue
   public abstract static class TargetCompletionKey
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTraversalFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTraversalFunction.java
index 9064c02..74b8032 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTraversalFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/TransitiveTraversalFunction.java
@@ -15,7 +15,6 @@
 
 import com.google.common.base.Preconditions;
 import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.collect.nestedset.NestedSet;
 import com.google.devtools.build.lib.events.EventHandler;
 import com.google.devtools.build.lib.packages.AdvertisedProviderSet;
 import com.google.devtools.build.lib.packages.NoSuchPackageException;
@@ -34,10 +33,10 @@
 
 /**
  * This class is like {@link TransitiveTargetFunction}, but the values it returns do not contain
- * {@link NestedSet}s. It performs the side-effects of {@link TransitiveTargetFunction} (i.e.,
- * ensuring that transitive targets and their packages have been loaded). It evaluates to a {@link
- * TransitiveTraversalValue} that contains the first error message it encountered, and a set of
- * names of providers if the target is a rule.
+ * {@link com.google.devtools.build.lib.collect.nestedset.NestedSet}s. It performs the side-effects
+ * of {@link TransitiveTargetFunction} (i.e., ensuring that transitive targets and their packages
+ * have been loaded). It evaluates to a {@link TransitiveTraversalValue} that contains the first
+ * error message it encountered, and a set of names of providers if the target is a rule.
  */
 public class TransitiveTraversalFunction
     extends TransitiveBaseTraversalFunction<
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceNameFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceNameFunction.java
index 17f7c9a..cb48178 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceNameFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceNameFunction.java
@@ -15,7 +15,6 @@
 
 import com.google.devtools.build.lib.cmdline.LabelConstants;
 import com.google.devtools.build.lib.packages.BuildFileContainsErrorsException;
-import com.google.devtools.build.lib.packages.NoSuchPackageException;
 import com.google.devtools.build.lib.packages.Package;
 import com.google.devtools.build.skyframe.SkyFunction;
 import com.google.devtools.build.skyframe.SkyFunctionException;
@@ -27,7 +26,7 @@
  * {@link SkyFunction} for {@link WorkspaceNameValue}s.
  *
  * <p>All errors (e.g. parsing errors or a symlink cycle encountered when consuming the WORKSPACE
- * file) result in a {@link NoSuchPackageException}.
+ * file) result in a {@link com.google.devtools.build.lib.packages.NoSuchPackageException}.
  */
 public class WorkspaceNameFunction implements SkyFunction {
   @Override
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusValue.java
index bb379d7..1037f0d 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceStatusValue.java
@@ -19,7 +19,6 @@
 import com.google.devtools.build.lib.analysis.WorkspaceStatusAction;
 import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec;
 import com.google.devtools.build.skyframe.SkyFunctionName;
-import com.google.devtools.build.skyframe.SkyKey;
 
 /**
  * Value that stores the workspace status artifacts and their generating action. There should be
@@ -51,7 +50,10 @@
     return volatileArtifact;
   }
 
-  /** {@link SkyKey} for {@link WorkspaceStatusValue}. */
+  /**
+   * {@link com/google/devtools/build/lib/skyframe/WorkspaceStatusValue.java used only in javadoc:
+   * com.google.devtools.build.skyframe.SkyKey} for {@link WorkspaceStatusValue}.
+   */
   public static class BuildInfoKey extends ActionLookupKey {
     private BuildInfoKey() {}
 
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java
index 26feda2..832c0be 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java
@@ -15,7 +15,6 @@
 package com.google.devtools.build.lib.skyframe.serialization;
 
 import com.google.common.collect.ImmutableBiMap;
-import com.google.common.collect.ImmutableMap;
 import com.google.protobuf.CodedInputStream;
 import com.google.protobuf.CodedOutputStream;
 import java.io.IOException;
@@ -24,9 +23,12 @@
  * Encodes an {@link ImmutableBiMap}. The iteration order of the deserialized map is the same as the
  * original map's.
  *
- * <p>We handle {@link ImmutableBiMap} by treating it as an {@link ImmutableMap} and calling the
- * proper conversion method ({@link ImmutableBiMap#copyOf}) when deserializing. This is valid
- * because every {@link ImmutableBiMap} is also an {@link ImmutableMap}.
+ * <p>We handle {@link ImmutableBiMap} by treating it as an {@link
+ * com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java used only in
+ * javadoc: com.google.common.collect.ImmutableMap} and calling the proper conversion method ({@link
+ * ImmutableBiMap#copyOf}) when deserializing. This is valid because every {@link ImmutableBiMap} is
+ * also an {@link com/google/devtools/build/lib/skyframe/serialization/ImmutableBiMapCodec.java used
+ * only in javadoc: com.google.common.collect.ImmutableMap}.
  *
  * <p>Any {@link SerializationException} or {@link IOException} that arises while serializing or
  * deserializing a map entry's value (not its key) will be wrapped in a new {@link
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/SerializationResult.java b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/SerializationResult.java
index 90a1598..55460e5 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/SerializationResult.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/SerializationResult.java
@@ -16,7 +16,6 @@
 
 import com.google.common.base.Preconditions;
 import com.google.common.util.concurrent.ListenableFuture;
-import com.google.protobuf.ByteString;
 import javax.annotation.Nullable;
 
 /**
@@ -27,7 +26,7 @@
  * #getFutureToBlockWritesOn} completes successfully.
  *
  * @param <T> Some serialized representation of an object, for instance a {@code byte[]} or a {@link
- *     ByteString}.
+ *     com.google.protobuf.ByteString}.
  */
 public abstract class SerializationResult<T> {
   private final T object;