diff --git a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/scoping/ProtoDescriptorProvider.java b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/scoping/ProtoDescriptorProvider.java
index 85b6346..9605687 100644
--- a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/scoping/ProtoDescriptorProvider.java
+++ b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/scoping/ProtoDescriptorProvider.java
@@ -129,14 +129,19 @@
     GeneralPreferences preferences = new GeneralPreferences(storeAccess, project);
     String descriptorProtoUri = preferences.getDescriptorProtoPath();
     if (!PreferenceNames.DEFAULT_DESCRIPTOR_PATH.equals(descriptorProtoUri)) {
-      URI descriptorProtoLocation =
-          URI.createURI(resolver.resolveUri(descriptorProtoUri, null, project));
-      if (descriptorProtoLocation != null) {
-        ProtoDescriptor protoDescriptor =
-            new ProtoDescriptor(descriptorProtoUri, descriptorProtoLocation, parser, nodes);
-        ProtoDescriptorInfo descriptorInfo =
-            new ProtoDescriptorInfo(descriptorProtoUri, descriptorProtoLocation, protoDescriptor);
-        descriptorInfos.put(descriptorProtoUri, descriptorInfo);
+      String resolvedUri = resolver.resolveUri(descriptorProtoUri, null, project);
+      if (resolvedUri != null) {
+        URI descriptorProtoLocation = URI.createURI(resolvedUri);
+        if (descriptorProtoLocation != null) {
+          ProtoDescriptor protoDescriptor =
+              new ProtoDescriptor(descriptorProtoUri, descriptorProtoLocation, parser, nodes);
+          ProtoDescriptorInfo descriptorInfo =
+              new ProtoDescriptorInfo(descriptorProtoUri, descriptorProtoLocation, protoDescriptor);
+          descriptorInfos.put(descriptorProtoUri, descriptorInfo);
+        }
+      } else {
+        LOG.log(Level.WARNING,
+            "Unable to resolve URI for descriptor proto location: " + descriptorProtoUri);
       }
     }
 
