diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java index f99fca187f1b..579661b64dbf 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java @@ -210,7 +210,7 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh myFile = file; myLanguageLevel = PsiUtil.getLanguageLevel(file); myJavaSdkVersion = notNull(JavaVersionService.getInstance().getJavaSdkVersion(file), JavaSdkVersion.fromLanguageLevel(myLanguageLevel)); - myJavaModule = myLanguageLevel.isAtLeast(LanguageLevel.JDK_1_9) ? ModuleHighlightUtil.getModuleDescriptor(file) : null; + myJavaModule = myLanguageLevel.isAtLeast(LanguageLevel.JDK_1_9) ? JavaModuleGraphUtil.findDescriptorByElement(file) : null; } @Override diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/JavaModuleGraphUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/JavaModuleGraphUtil.java index 55acffc9517a..329d9f7cbddc 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/JavaModuleGraphUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/JavaModuleGraphUtil.java @@ -50,13 +50,18 @@ public class JavaModuleGraphUtil { if (element != null) { PsiFileSystemItem fsItem = element instanceof PsiFileSystemItem ? (PsiFileSystemItem)element : element.getContainingFile(); if (fsItem != null) { - return ModuleHighlightUtil.getModuleDescriptor(fsItem); + return findDescriptorByFile(fsItem.getVirtualFile(), fsItem.getProject()); } } return null; } + @Nullable + public static PsiJavaModule findDescriptorByFile(@Nullable VirtualFile file, @NotNull Project project) { + return ModuleHighlightUtil.getModuleDescriptor(file, project); + } + @Nullable public static Collection findCycle(@NotNull PsiJavaModule module) { Project project = module.getProject(); diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java index 268329705651..e80e42c902a3 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java @@ -62,11 +62,9 @@ public class ModuleHighlightUtil { private static final Attributes.Name MULTI_RELEASE = new Attributes.Name("Multi-Release"); @Nullable - static PsiJavaModule getModuleDescriptor(@NotNull PsiFileSystemItem fsItem) { - VirtualFile file = fsItem.getVirtualFile(); + static PsiJavaModule getModuleDescriptor(@Nullable VirtualFile file, @NotNull Project project) { if (file == null) return null; - Project project = fsItem.getProject(); ProjectFileIndex index = ProjectFileIndex.SERVICE.getInstance(project); if (index.isInLibrary(file)) { VirtualFile root;