diff --git a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/classpath/ChangeLibraryLevelActionBase.java b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/classpath/ChangeLibraryLevelActionBase.java index 02bf1a8bd452..37d134b20f5d 100644 --- a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/classpath/ChangeLibraryLevelActionBase.java +++ b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/classpath/ChangeLibraryLevelActionBase.java @@ -41,6 +41,7 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.openapi.vfs.newvfs.ArchiveFileSystem; import com.intellij.util.PathUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -94,7 +95,9 @@ public abstract class ChangeLibraryLevelActionBase extends AnAction { if (targetDirectoryPath != null) { for (OrderRootType type : OrderRootType.getAllTypes()) { for (VirtualFile root : library.getFiles(type)) { - fileToCopy.add(VfsUtil.virtualToIoFile(PathUtil.getLocalFile(root))); + if (root.isInLocalFileSystem() || root.getFileSystem() instanceof ArchiveFileSystem) { + fileToCopy.add(VfsUtil.virtualToIoFile(PathUtil.getLocalFile(root))); + } } } if (!copyOrMoveFiles(fileToCopy, targetDirectoryPath, copiedFiles)) {