don't recognize packages under resource roots (IDEA-184002)

This commit is contained in:
Anna.Kozlova
2017-12-20 20:15:54 +01:00
parent 53d21cba51
commit c8810774d1
@@ -40,6 +40,7 @@ import com.intellij.psi.impl.JavaPsiImplementationHelper;
import com.intellij.psi.util.PsiUtil;
import com.intellij.util.IncorrectOperationException;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.model.java.JavaModuleSourceRootTypes;
import java.util.Collections;
import java.util.Map;
@@ -50,10 +51,12 @@ public class JavaDirectoryServiceImpl extends CoreJavaDirectoryService {
@Override
public PsiPackage getPackage(@NotNull PsiDirectory dir) {
ProjectFileIndex projectFileIndex = ProjectRootManager.getInstance(dir.getProject()).getFileIndex();
String packageName = projectFileIndex.getPackageNameByDirectory(dir.getVirtualFile());
if (packageName == null) return null;
return JavaPsiFacade.getInstance(dir.getProject()).findPackage(packageName);
Project project = dir.getProject();
ProjectFileIndex projectFileIndex = ProjectRootManager.getInstance(project).getFileIndex();
VirtualFile virtualFile = dir.getVirtualFile();
String packageName = projectFileIndex.getPackageNameByDirectory(virtualFile);
if (packageName == null || projectFileIndex.isUnderSourceRootOfType(virtualFile, JavaModuleSourceRootTypes.RESOURCES)) return null;
return JavaPsiFacade.getInstance(project).findPackage(packageName);
}
@Override