mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java] descriptor lookup in multi-release .jars (inline)
This commit is contained in:
+4
-9
@@ -63,7 +63,10 @@ public class ModuleHighlightUtil {
|
||||
if (index.isInLibraryClasses(file)) {
|
||||
VirtualFile classRoot = index.getClassRootForFile(file);
|
||||
if (classRoot != null) {
|
||||
VirtualFile descriptorFile = findModuleDescriptor(classRoot);
|
||||
VirtualFile descriptorFile = classRoot.findChild(PsiJavaModule.MODULE_INFO_CLS_FILE);
|
||||
if (descriptorFile == null) {
|
||||
descriptorFile = classRoot.findFileByRelativePath("META-INF/versions/9/" + PsiJavaModule.MODULE_INFO_CLS_FILE);
|
||||
}
|
||||
if (descriptorFile != null) {
|
||||
PsiFile psiFile = PsiManager.getInstance(project).findFile(descriptorFile);
|
||||
if (psiFile instanceof PsiJavaFile) {
|
||||
@@ -88,14 +91,6 @@ public class ModuleHighlightUtil {
|
||||
}
|
||||
}
|
||||
|
||||
private static VirtualFile findModuleDescriptor(VirtualFile classRoot) {
|
||||
VirtualFile result = classRoot.findChild(PsiJavaModule.MODULE_INFO_CLS_FILE);
|
||||
if (result == null) {
|
||||
result = classRoot.findFileByRelativePath("META-INF/versions/9/" + PsiJavaModule.MODULE_INFO_CLS_FILE);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
static HighlightInfo checkFileName(@NotNull PsiJavaModule element, @NotNull PsiFile file) {
|
||||
if (!MODULE_INFO_FILE.equals(file.getName())) {
|
||||
|
||||
Reference in New Issue
Block a user