diff --git a/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ClientPropertiesManager.java b/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ClientPropertiesManager.java index a57a864b0e03..116200a1159e 100644 --- a/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ClientPropertiesManager.java +++ b/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ClientPropertiesManager.java @@ -23,6 +23,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.AtomicNotNullLazyValue; import com.intellij.openapi.util.JDOMUtil; import com.intellij.openapi.util.NotNullLazyValue; +import com.intellij.uiDesigner.LoaderFactory; import org.jdom.Element; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -182,11 +183,11 @@ public class ClientPropertiesManager implements PersistentStateComponent getConfiguredClasses() { + public List getConfiguredClasses(@NotNull Project project) { List result = new ArrayList<>(); for(String className: myPropertyMap.keySet()) { try { - result.add(Class.forName(className)); + result.add(Class.forName(className, true, LoaderFactory.getInstance(project).getProjectClassLoader())); } catch (ClassNotFoundException e) { // TODO: do something better than ignore? diff --git a/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ConfigureClientPropertiesDialog.java b/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ConfigureClientPropertiesDialog.java index 1f1e51d5a323..0564270900c0 100644 --- a/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ConfigureClientPropertiesDialog.java +++ b/plugins/ui-designer/src/com/intellij/uiDesigner/clientProperties/ConfigureClientPropertiesDialog.java @@ -24,6 +24,7 @@ import com.intellij.openapi.util.SystemInfo; import com.intellij.ui.*; import com.intellij.ui.table.JBTable; import com.intellij.ui.treeStructure.Tree; +import com.intellij.uiDesigner.LoaderFactory; import com.intellij.uiDesigner.UIDesignerBundle; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -122,7 +123,7 @@ public class ConfigureClientPropertiesDialog extends DialogWrapper { if (className.length() == 0) return; final Class aClass; try { - aClass = Class.forName(className); + aClass = Class.forName(className, true, LoaderFactory.getInstance(myProject).getProjectClassLoader()); } catch (ClassNotFoundException ex) { Messages.showErrorDialog(mySplitter, @@ -192,7 +193,7 @@ public class ConfigureClientPropertiesDialog extends DialogWrapper { } private void fillClassTree() { - List configuredClasses = myManager.getConfiguredClasses(); + List configuredClasses = myManager.getConfiguredClasses(myProject); Collections.sort(configuredClasses, new Comparator() { @Override public int compare(final Class o1, final Class o2) {