diff --git a/app/src/processing/app/Mode.java b/app/src/processing/app/Mode.java index 803dbd9de..7b6637c67 100644 --- a/app/src/processing/app/Mode.java +++ b/app/src/processing/app/Mode.java @@ -936,6 +936,12 @@ public abstract class Mode { // base.handleNewReplace(); // } + + public String getSearchPath() { + return ""; + } + + @Override public String toString() { return getTitle(); diff --git a/java/src/processing/mode/java/JavaMode.java b/java/src/processing/mode/java/JavaMode.java index 4f9500229..2ee7e92bc 100644 --- a/java/src/processing/mode/java/JavaMode.java +++ b/java/src/processing/mode/java/JavaMode.java @@ -263,6 +263,20 @@ public class JavaMode extends Mode { JavaBuild build = new JavaBuild(sketch); return build.exportApplication(); } + + + @Override + public String getSearchPath() { + StringBuilder tehPath = new StringBuilder(System.getProperty("java.class.path")); + + // Starting with JDK 1.7, no longer using Apple's Java, so + // rt.jar has the same path on all OSes + tehPath.append(File.pathSeparatorChar + + System.getProperty("java.home") + File.separator + "lib" + + File.separator + "rt.jar"); + + return tehPath.toString(); + } // . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . diff --git a/java/src/processing/mode/java/pdex/ASTGenerator.java b/java/src/processing/mode/java/pdex/ASTGenerator.java index 425af693a..5a09b7e87 100644 --- a/java/src/processing/mode/java/pdex/ASTGenerator.java +++ b/java/src/processing/mode/java/pdex/ASTGenerator.java @@ -306,14 +306,7 @@ public class ASTGenerator { protected void loadJars() { factory = new ClassPathFactory(); - StringBuilder tehPath = - new StringBuilder(System.getProperty("java.class.path")); - - // Starting with JDK 1.7, no longer using Apple's Java, so - // rt.jar has the same path on all OSes - tehPath.append(File.pathSeparatorChar - + System.getProperty("java.home") + File.separator + "lib" - + File.separator + "rt.jar" + File.pathSeparatorChar); + StringBuilder tehPath = new StringBuilder(editor.getMode().getSearchPath()); if (errorCheckerService.classpathJars != null) { synchronized (errorCheckerService.classpathJars) {