PsiFileSystemItem (@Nullable @NonNls String s, ConvertContext context) { final GenericAttributeValue attribValue = context.getInvocationElement().getParentOfType(GenericAttributeValue.class, false); if (attribValue == null) { return null; } String path = attribValue.getStringValue(); if (path == null) { path = getAttributeDefaultValue(context, attribValue); } if (path == null) { return null; } File file = new File(path); if (!file.isAbsolute()) { final AntDomProject antProject = getEffectiveAntProject(attribValue); if (antProject == null) { return null; } file = new File(getPathResolveRoot(context, antProject), path); } VirtualFile vFile = LocalFileSystem.getInstance().findFileByPath(FileUtil.toSystemIndependentName(file.getAbsolutePath())); if (vFile == null) { return null; } final PsiManager psiManager = context.getPsiManager(); return vFile.isDirectory()? psiManager.findDirectory(vFile) : psiManager.findFile(vFile); }