From 10d7e95ccb361ca5c60fbc392ffdb70aaa27a50d Mon Sep 17 00:00:00 2001 From: nik Date: Mon, 16 Nov 2015 20:53:52 +0300 Subject: [PATCH] external build: disable java extensions for external build process to ensure that build won't fail if incompatible version of a library used by the build process is added to extensions directory (IDEA-147368) --- .../impl/src/com/intellij/compiler/server/BuildManager.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java b/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java index 187e48cebf3c..5b3c0b9d1e1b 100644 --- a/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java +++ b/java/compiler/impl/src/com/intellij/compiler/server/BuildManager.java @@ -135,6 +135,7 @@ public class BuildManager implements Disposable { private static final String COMPILER_PROCESS_JDK_PROPERTY = "compiler.process.jdk"; public static final String SYSTEM_ROOT = "compile-server"; public static final String TEMP_DIR_NAME = "_temp_"; + private static final String JAVA_EXT_DIRS_PROPERTY = "java.ext.dirs"; // do not make static in order not to access application on class load private final boolean IS_UNIT_TEST_MODE; private static final String IWS_EXTENSION = ".iws"; @@ -1163,6 +1164,10 @@ public class BuildManager implements Disposable { cmdLine.addParameters(args); } + if (!cmdLine.getParametersList().hasProperty(JAVA_EXT_DIRS_PROPERTY)) { + cmdLine.getParametersList().addProperty(JAVA_EXT_DIRS_PROPERTY, "\"\""); + } + @SuppressWarnings("UnnecessaryFullyQualifiedName") final Class launcherClass = org.jetbrains.jps.cmdline.Launcher.class;