diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/PsiJavaModuleReference.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/PsiJavaModuleReference.java index 0a2d11ecc2b6..248aee94e0d3 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/PsiJavaModuleReference.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/PsiJavaModuleReference.java @@ -122,13 +122,17 @@ public class PsiJavaModuleReference extends PsiReferenceBase.Poly>> KEY = Key.create("java.module.ref.text.resolve"); + private static final Key>> K_COMPLETE = + Key.create("java.module.ref.text.resolve.complete"); + private static final Key>> K_INCOMPLETE = + Key.create("java.module.ref.text.resolve.incomplete"); @Nullable public static PsiJavaModule resolve(@NotNull final PsiElement refOwner, String refText, boolean incompleteCode) { if (StringUtil.isEmpty(refText)) return null; CachedValuesManager manager = CachedValuesManager.getManager(refOwner.getProject()); - return manager.getParameterizedCachedValue(refOwner, KEY, new ParameterizedCachedValueProvider>() { + Key>> key = incompleteCode ? K_COMPLETE : K_INCOMPLETE; + return manager.getParameterizedCachedValue(refOwner, key, new ParameterizedCachedValueProvider>() { @Nullable @Override public Result compute(Pair p) {