mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
build javac ast index only when compilation invoked from IDE
It makes no sense to build it in standalone mode and this also may lead to exceptions in case of improperly configured classloaders (IDEA-162877)
This commit is contained in:
@@ -17,6 +17,7 @@ package com.intellij.compiler.server;
|
||||
|
||||
import com.intellij.ProjectTopics;
|
||||
import com.intellij.compiler.CompilerConfiguration;
|
||||
import com.intellij.compiler.CompilerReferenceService;
|
||||
import com.intellij.compiler.CompilerWorkspaceConfiguration;
|
||||
import com.intellij.compiler.impl.CompilerUtil;
|
||||
import com.intellij.compiler.impl.javaCompiler.javac.JavacConfiguration;
|
||||
@@ -104,6 +105,7 @@ import org.jetbrains.jps.cmdline.BuildMain;
|
||||
import org.jetbrains.jps.cmdline.ClasspathBootstrap;
|
||||
import org.jetbrains.jps.incremental.Utils;
|
||||
import org.jetbrains.jps.model.java.JpsJavaSdkType;
|
||||
import org.jetbrains.jps.model.java.compiler.JpsJavaCompilerOptions;
|
||||
import org.jetbrains.jps.model.serialization.JpsGlobalLoader;
|
||||
|
||||
import javax.tools.*;
|
||||
@@ -1081,6 +1083,7 @@ public class BuildManager implements Disposable {
|
||||
}
|
||||
cmdLine.addParameter("-D"+ GlobalOptions.COMPILE_PARALLEL_OPTION +"=" + Boolean.toString(config.PARALLEL_COMPILATION));
|
||||
cmdLine.addParameter("-D"+ GlobalOptions.REBUILD_ON_DEPENDENCY_CHANGE_OPTION + "=" + Boolean.toString(config.REBUILD_ON_DEPENDENCY_CHANGE));
|
||||
cmdLine.addParameter("-D" + JpsJavaCompilerOptions.COLLECT_REFERENCES_PROPERTY + "=" + CompilerReferenceService.isEnabled());
|
||||
|
||||
if (Boolean.TRUE.equals(Boolean.valueOf(System.getProperty("java.net.preferIPv4Stack", "false")))) {
|
||||
cmdLine.addParameter("-Djava.net.preferIPv4Stack=true");
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.jps.builders.impl.java;
|
||||
|
||||
import com.intellij.util.ExceptionUtil;
|
||||
import com.intellij.util.SystemProperties;
|
||||
import com.sun.source.util.JavacTask;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -24,6 +25,7 @@ import org.jetbrains.jps.builders.java.JavaCompilingTool;
|
||||
import org.jetbrains.jps.javac.JavacMain;
|
||||
import org.jetbrains.jps.javac.ast.JavacReferencesCollector;
|
||||
import org.jetbrains.jps.model.java.compiler.JavaCompilers;
|
||||
import org.jetbrains.jps.model.java.compiler.JpsJavaCompilerOptions;
|
||||
|
||||
import javax.tools.*;
|
||||
import java.io.File;
|
||||
@@ -85,6 +87,8 @@ public class JavacCompilerTool extends JavaCompilingTool {
|
||||
|
||||
@Override
|
||||
public void prepareCompilationTask(@NotNull JavaCompiler.CompilationTask task, @NotNull Collection<String> options) {
|
||||
JavacReferencesCollector.installOn((JavacTask)task);
|
||||
if (SystemProperties.getBooleanProperty(JpsJavaCompilerOptions.COLLECT_REFERENCES_PROPERTY, false)) {
|
||||
JavacReferencesCollector.installOn((JavacTask)task);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,6 +19,8 @@ package org.jetbrains.jps.model.java.compiler;
|
||||
* @author nik
|
||||
*/
|
||||
public class JpsJavaCompilerOptions {
|
||||
public static final String COLLECT_REFERENCES_PROPERTY = "jps.javac.collect.references";
|
||||
|
||||
public boolean DEBUGGING_INFO = true;
|
||||
public boolean GENERATE_NO_WARNINGS = false;
|
||||
public boolean DEPRECATION = true;
|
||||
|
||||
Reference in New Issue
Block a user