Element (@NotNull ModuleRootModel model) { Element classpathElement = new Element(EclipseXml.CLASSPATH_TAG); for (OrderEntry orderEntry : model.getOrderEntries()) { createClasspathEntry(orderEntry, classpathElement, model); } String outputPath = "bin"; final String compilerOutputUrl = model.getModuleExtension(CompilerModuleExtension.class).getCompilerOutputUrl(); final EclipseModuleManager eclipseModuleManager = EclipseModuleManagerImpl.getInstance(model.getModule()); final String linkedPath = eclipseModuleManager.getEclipseLinkedVarPath(compilerOutputUrl); if (linkedPath != null) { outputPath = linkedPath; } else { VirtualFile contentRoot = EPathUtil.getContentRoot(model); VirtualFile output = model.getModuleExtension(CompilerModuleExtension.class).getCompilerOutputPath(); if (contentRoot != null && output != null && VfsUtilCore.isAncestor(contentRoot, output, false)) { outputPath = EPathUtil.collapse2EclipsePath(output.getUrl(), model); } else if (output == null && compilerOutputUrl != null) { outputPath = EPathUtil.collapse2EclipsePath(compilerOutputUrl, model); } } for (String support : eclipseModuleManager.getUsedCons()) { addOrderEntry(EclipseXml.CON_KIND, support, classpathElement, eclipseModuleManager.getSrcPlace(support), myOldEntries); } setAttributeIfAbsent(addOrderEntry(EclipseXml.OUTPUT_KIND, outputPath, classpathElement), EclipseXml.PATH_ATTR, EclipseXml.BIN_DIR); return classpathElement; }