NewLibraryConfiguration (@NotNull JComponent parentComponent, VirtualFile contextDirectory) { final FileChooserDescriptor descriptor = new FileChooserDescriptor(false, false, true, false, false, true); descriptor.setTitle(JavaUiBundle.message("new.library.file.chooser.title")); descriptor.setDescription(JavaUiBundle.message("new.library.file.chooser.description")); final VirtualFile[] files = FileChooser.chooseFiles(descriptor, parentComponent, null, contextDirectory); if (files.length == 0) { return null; } return new NewLibraryConfiguration(myDefaultLibraryName, getDownloadableLibraryType(), new LibraryVersionProperties()) { @Override public void addRoots(@NotNull LibraryEditor editor) { for (VirtualFile file : files) { editor.addRoot(file, OrderRootType.CLASSES); } } }; }