when launching build process or javac server suppress libraries from 'ext' directories to ensure compiler is loaded from correct location

This commit is contained in:
Eugene Zhuravlev
2013-10-10 13:01:42 +02:00
parent f40dfd187d
commit a42b1d97df
2 changed files with 6 additions and 3 deletions
@@ -100,8 +100,7 @@ import org.jetbrains.jps.cmdline.ClasspathBootstrap;
import org.jetbrains.jps.incremental.Utils;
import org.jetbrains.jps.model.serialization.JpsGlobalLoader;
import javax.tools.JavaCompiler;
import javax.tools.ToolProvider;
import javax.tools.*;
import java.io.File;
import java.io.IOException;
import java.net.InetSocketAddress;
@@ -890,7 +889,8 @@ public class
launcherCp.add(ClasspathBootstrap.getResourcePath(launcherClass));
launcherCp.add(compilerPath);
ClasspathBootstrap.appendJavaCompilerClasspath(launcherCp);
// this will disable standard extensions to ensure javac is loaded from the right tools.jar
cmdLine.addParameter("-Djava.ext.dirs=");
cmdLine.addParameter("-classpath");
cmdLine.addParameter(classpathToString(launcherCp));
@@ -86,6 +86,9 @@ public class JavacServerBootstrap {
appendParam(cmdLine, "-D" + JavacServer.USE_ECLIPSE_COMPILER_PROPERTY);
}
// this will disable standard extensions to ensure javac is loaded from the right tools.jar
appendParam(cmdLine, "-Djava.ext.dirs=");
for (String option : vmOptions) {
appendParam(cmdLine, option);
}