Using XML instead of module scripts when running from IDE
Original commit: f1f9d5327c
This commit is contained in:
@@ -82,7 +82,7 @@ public class KotlinBuilder extends ModuleLevelBuilder {
|
|||||||
return ExitCode.NOTHING_DONE;
|
return ExitCode.NOTHING_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
File scriptFile = KotlinBuilderModuleScriptGenerator.generateModuleScript(context, representativeTarget, sourceFiles);
|
File moduleFile = KotlinBuilderModuleScriptGenerator.generateModuleDescription(context, representativeTarget, sourceFiles);
|
||||||
|
|
||||||
File outputDir = representativeTarget.getOutputDir();
|
File outputDir = representativeTarget.getOutputDir();
|
||||||
|
|
||||||
@@ -99,7 +99,7 @@ public class KotlinBuilder extends ModuleLevelBuilder {
|
|||||||
KotlinCompilerRunner.runCompiler(
|
KotlinCompilerRunner.runCompiler(
|
||||||
messageCollector,
|
messageCollector,
|
||||||
environment,
|
environment,
|
||||||
scriptFile,
|
moduleFile,
|
||||||
outputItemCollector,
|
outputItemCollector,
|
||||||
/*runOutOfProcess = */false);
|
/*runOutOfProcess = */false);
|
||||||
|
|
||||||
|
|||||||
+11
-5
@@ -21,7 +21,7 @@ import com.intellij.util.containers.ContainerUtil;
|
|||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.jetbrains.jet.compiler.runner.KotlinModuleDescriptionGenerator;
|
import org.jetbrains.jet.compiler.runner.KotlinModuleDescriptionGenerator;
|
||||||
import org.jetbrains.jet.compiler.runner.KotlinModuleScriptGenerator;
|
import org.jetbrains.jet.compiler.runner.KotlinModuleXmlGenerator;
|
||||||
import org.jetbrains.jps.builders.java.JavaSourceRootDescriptor;
|
import org.jetbrains.jps.builders.java.JavaSourceRootDescriptor;
|
||||||
import org.jetbrains.jps.incremental.CompileContext;
|
import org.jetbrains.jps.incremental.CompileContext;
|
||||||
import org.jetbrains.jps.incremental.ModuleBuildTarget;
|
import org.jetbrains.jps.incremental.ModuleBuildTarget;
|
||||||
@@ -33,7 +33,10 @@ import org.jetbrains.jps.model.java.JpsJavaDependenciesEnumerator;
|
|||||||
import org.jetbrains.jps.model.java.JpsJavaExtensionService;
|
import org.jetbrains.jps.model.java.JpsJavaExtensionService;
|
||||||
import org.jetbrains.jps.model.library.JpsLibrary;
|
import org.jetbrains.jps.model.library.JpsLibrary;
|
||||||
import org.jetbrains.jps.model.library.JpsLibraryRoot;
|
import org.jetbrains.jps.model.library.JpsLibraryRoot;
|
||||||
import org.jetbrains.jps.model.module.*;
|
import org.jetbrains.jps.model.module.JpsDependencyElement;
|
||||||
|
import org.jetbrains.jps.model.module.JpsLibraryDependency;
|
||||||
|
import org.jetbrains.jps.model.module.JpsModule;
|
||||||
|
import org.jetbrains.jps.model.module.JpsSdkDependency;
|
||||||
import org.jetbrains.jps.util.JpsPathUtil;
|
import org.jetbrains.jps.util.JpsPathUtil;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -45,10 +48,13 @@ import java.util.List;
|
|||||||
import static org.jetbrains.jet.compiler.runner.KotlinModuleDescriptionGenerator.DependencyProvider;
|
import static org.jetbrains.jet.compiler.runner.KotlinModuleDescriptionGenerator.DependencyProvider;
|
||||||
|
|
||||||
public class KotlinBuilderModuleScriptGenerator {
|
public class KotlinBuilderModuleScriptGenerator {
|
||||||
public static File generateModuleScript(CompileContext context, ModuleBuildTarget target, List<File> sourceFiles)
|
|
||||||
|
public static final KotlinModuleDescriptionGenerator GENERATOR = KotlinModuleXmlGenerator.INSTANCE;
|
||||||
|
|
||||||
|
public static File generateModuleDescription(CompileContext context, ModuleBuildTarget target, List<File> sourceFiles)
|
||||||
throws IOException
|
throws IOException
|
||||||
{
|
{
|
||||||
CharSequence moduleScriptText = KotlinModuleScriptGenerator.INSTANCE.generateModuleScript(
|
CharSequence moduleScriptText = GENERATOR.generateModuleScript(
|
||||||
target.getId(),
|
target.getId(),
|
||||||
getKotlinModuleDependencies(context, target),
|
getKotlinModuleDependencies(context, target),
|
||||||
sourceFiles,
|
sourceFiles,
|
||||||
@@ -57,7 +63,7 @@ public class KotlinBuilderModuleScriptGenerator {
|
|||||||
Collections.singleton(target.getOutputDir())
|
Collections.singleton(target.getOutputDir())
|
||||||
);
|
);
|
||||||
|
|
||||||
File scriptFile = new File(target.getOutputDir(), "script.kts");
|
File scriptFile = new File(target.getOutputDir(), "script." + GENERATOR.getFileExtension());
|
||||||
|
|
||||||
writeScriptToFile(context, moduleScriptText, scriptFile);
|
writeScriptToFile(context, moduleScriptText, scriptFile);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user