Bug 55975 User Libraries lose jars after save, load [build path]
I20040324-0800 Saving and then re-loading the saved user library misses some of the jars. Steps: - new workspace, import org.apache.ant as binary - new java project "abc" - on abc: Properties, Buildpath, Libraries, Add Library - User Library, Next, User Libraries - New: "Ameisen" (not system) - Add Jars... - add ant.jar and ant-antlr.jar from org.apache.ant/lib - Save... into ameisen.userlibraries - Load... from ameisen.userlibraries, load "Ameisen" -> only ant-antlr.jar is loaded -> cannot remove ant-antlr.jar (no reaction, log empty)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/UserLibraryPreferencePage.java
import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.IStringButtonAdapter;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.ITreeListAdapter;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.LayoutUtil;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.StringButtonDialogField;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.StringDialogField;
import org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField;
public class UserLibraryPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
	public static final String ID= "org.eclipse.jdt.ui.preferences.UserLibraryPreferencePage"; 
	public static class LibraryNameDialog extends StatusDialog implements IDialogFieldListener {
		private StringDialogField fNameField;
		private SelectionButtonDialogField fIsSystemField;
		private CPUserLibraryElement fElementToEdit;
		private List fExistingLibraries;
		public LibraryNameDialog(Shell parent, CPUserLibraryElement elementToEdit, List existingLibraries) {
			super(parent);
			if (elementToEdit == null) { 
				setTitle(PreferencesMessages.getString("UserLibraryPreferencePage.LibraryNameDialog.new.title")); 
			} else {
				setTitle(PreferencesMessages.getString("UserLibraryPreferencePage.LibraryNameDialog.edit.title")); 
			}
			
			fElementToEdit= elementToEdit;
			fExistingLibraries= existingLibraries;
			
			fNameField= new StringDialogField();
			fNameField.setDialogFieldListener(this);
			fNameField.setLabelText(PreferencesMessages.getString("UserLibraryPreferencePage.LibraryNameDialog.name.label"));