diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/lib/app-framework.jar b/ diy-layout-creator --username bancika@gmail.com/diylc-core/lib/app-framework.jar deleted file mode 100644 index efcbe984..00000000 Binary files a/ diy-layout-creator --username bancika@gmail.com/diylc-core/lib/app-framework.jar and /dev/null differ diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/library/main.jar b/ diy-layout-creator --username bancika@gmail.com/diylc-core/library/main.jar index 079c2792..b648de5e 100644 Binary files a/ diy-layout-creator --username bancika@gmail.com/diylc-core/library/main.jar and b/ diy-layout-creator --username bancika@gmail.com/diylc-core/library/main.jar differ diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/Presenter.java b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/Presenter.java index 9ea5af26..b8e66407 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/Presenter.java +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/Presenter.java @@ -299,8 +299,30 @@ public class Presenter implements IPlugInPort { if (componentTypes == null) { LOG.info("Loading component types."); componentTypes = new HashMap>(); - List> componentTypeClasses = JarScanner.getInstance() - .scanFolder("library/", IDIYComponent.class); + // On Mac we use ":" to split paths, so check for that + String[] classPath = System.getProperty("java.class.path").split( + System.getProperty("java.class.path").contains(";") ? ";" + : ":"); + Set> componentTypeClasses = new HashSet>(); + for (String path : classPath) { + path = path.replace('\\', '/'); + File f = new File(path); + try { + if (f.isDirectory()) { + LOG.info("Scanning folder for components: " + + f.getAbsolutePath()); + componentTypeClasses.addAll(JarScanner.getInstance() + .scanFolder(path, IDIYComponent.class)); + } else { + LOG.info("Scanning JAR for components: " + + f.getAbsolutePath()); + componentTypeClasses.addAll(JarScanner.getInstance() + .scanJar(f, IDIYComponent.class)); + } + } catch (Exception e) { + LOG.warn("Could not scan path " + path, e); + } + } for (Class clazz : componentTypeClasses) { if (!Modifier.isAbstract(clazz.getModifiers())) { ComponentType componentType = ComponentProcessor