Make error message in case top-level aspect is missing clearer.

Fixes #2874.

Change-Id: I636e0f6b56a1e33adfc64e90f36f76d4254d0281
PiperOrigin-RevId: 162726099
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
index b01faa9..234ed0b 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
@@ -120,9 +120,15 @@
 
       Object skylarkValue = skylarkImportLookupValue.getEnvironmentExtension().getBindings()
           .get(skylarkValueName);
+      if (skylarkValue == null) {
+        throw new ConversionException(
+            String.format(
+                "%s is not exported from %s", skylarkValueName, extensionLabel.toString()));
+      }
       if (!(skylarkValue instanceof SkylarkAspect)) {
         throw new ConversionException(
-            skylarkValueName + " from " + extensionLabel.toString() + " is not an aspect");
+            String.format(
+                "%s from %s is not an aspect", skylarkValueName, extensionLabel.toString()));
       }
       return (SkylarkAspect) skylarkValue;
     } catch (SkylarkImportFailedException | ConversionException e) {
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkAspectsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkAspectsTest.java
index f9d10a9..8b2dc21 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkAspectsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkAspectsTest.java
@@ -867,7 +867,6 @@
     assertContainsEvent("MyAspect from //test:aspect.bzl is not an aspect");
   }
 
-
   @Test
   public void duplicateOutputGroups() throws Exception {
     scratch.file(
@@ -1153,7 +1152,7 @@
     } catch (ViewCreationFailedException e) {
       // expect to fail.
     }
-    assertContainsEvent("MyAspect from //test:aspect.bzl is not an aspect");
+    assertContainsEvent("MyAspect is not exported from //test:aspect.bzl");
   }
 
   @Test