From 7d44431f2b38c048e9fd3cfcde18e8fdd82a504c Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 24 Mar 2015 14:30:01 +0100 Subject: [PATCH] eclipse: construct lib name if not available (IDEA-137958) --- .../conversion/IdeaSpecificSettings.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/plugins/eclipse/src/org/jetbrains/idea/eclipse/conversion/IdeaSpecificSettings.java b/plugins/eclipse/src/org/jetbrains/idea/eclipse/conversion/IdeaSpecificSettings.java index 01fb1494c26d..87cf158924e6 100644 --- a/plugins/eclipse/src/org/jetbrains/idea/eclipse/conversion/IdeaSpecificSettings.java +++ b/plugins/eclipse/src/org/jetbrains/idea/eclipse/conversion/IdeaSpecificSettings.java @@ -42,6 +42,7 @@ import org.jdom.Element; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.jetbrains.idea.eclipse.AbstractEclipseClasspathReader; import org.jetbrains.idea.eclipse.IdeaXml; import org.jetbrains.idea.eclipse.config.EclipseModuleManagerImpl; @@ -327,8 +328,22 @@ public class IdeaSpecificSettings extends AbstractIdeaSpecificSettings 0) { + VirtualFile file = VirtualFileManager.getInstance().findFileByUrl(urls[0]); + file = JarFileSystem.getInstance().getVirtualFileForJar(file); + libraryName = file != null ? file.getName() : null; + } + if (libraryName == null) { + libraryName = libraryEntry.getPresentableName(); + } + } + + element.setAttribute("name", libraryName); DependencyScope scope = libraryEntry.getScope(); element.setAttribute("scope", scope.name()); if (libraryEntry.isModuleLevel()) {