From eaa62caf3128558159f04d4d04701aa4cd0a809a Mon Sep 17 00:00:00 2001 From: Alexander Bubenchikov Date: Mon, 11 Feb 2019 15:09:54 +0300 Subject: [PATCH] IDEA-206109 maven build tool window - fix tests --- .../BuildToolWindowMavenConsole.java | 22 +++++++++---------- .../execution/MavenRunConfiguration.java | 5 +++-- .../build/MavenProjectTaskRunner.java | 6 +++++ .../maven/project/MavenProjectsProcessor.java | 10 ++++----- 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/buildtool/BuildToolWindowMavenConsole.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/buildtool/BuildToolWindowMavenConsole.java index 7b50f19a9d3e..6c43c6c0441a 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/buildtool/BuildToolWindowMavenConsole.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/buildtool/BuildToolWindowMavenConsole.java @@ -72,18 +72,18 @@ public class BuildToolWindowMavenConsole extends MavenConsole { @NotNull ExecutionConsole console, @NotNull BuildDescriptor descriptor) { - return new BuildView(project, console, descriptor, "build.toolwindow.run.selection.state", - new ViewManager() { - @Override - public boolean isConsoleEnabledByDefault() { - return true; - } + return new BuildView(project, console, descriptor, "build.toolwindow.run.selection.state", + new ViewManager() { + @Override + public boolean isConsoleEnabledByDefault() { + return true; + } - @Override - public boolean isBuildContentView() { - return true; - } - }); + @Override + public boolean isBuildContentView() { + return true; + } + }); } @Override diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunConfiguration.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunConfiguration.java index bc56042bcbe6..7d0dab6ddc00 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunConfiguration.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunConfiguration.java @@ -89,7 +89,6 @@ public class MavenRunConfiguration extends LocatableConfigurationBase implements @Override public RunProfileState getState(@NotNull final Executor executor, @NotNull final ExecutionEnvironment env) { JavaCommandLineState state = new JavaCommandLineStateImpl(env); - state.setConsoleBuilder(MavenConsoleImpl.createConsoleBuilder(getProject())); return state; } @@ -327,8 +326,9 @@ public class MavenRunConfiguration extends LocatableConfigurationBase implements if (console == null) { return null; } - console.attachToProcess(processHandler); + if (!Registry.is("maven.build.tool.window.enabled")) { + console.attachToProcess(processHandler); return console; } else { @@ -341,6 +341,7 @@ public class MavenRunConfiguration extends LocatableConfigurationBase implements MavenBuildEventProcessor eventProcessor = new MavenBuildEventProcessor(getProject(), getProject().getBasePath(), buildView, descriptor, taskId); processHandler.addProcessListener(new BuildToolConsoleProcessAdapter(eventProcessor)); + buildView.attachToProcess(processHandler); return buildView; } } diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/build/MavenProjectTaskRunner.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/build/MavenProjectTaskRunner.java index 64c74a322ef8..9c87920d4324 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/build/MavenProjectTaskRunner.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/build/MavenProjectTaskRunner.java @@ -216,6 +216,12 @@ public class MavenProjectTaskRunner extends ProjectTaskRunner { AtomicInteger warnings = new AtomicInteger(); MavenConsole console = MavenConsole.createGuiMavenConsole(project, title, project.getBasePath()); console.addProcessListener(new ProcessAdapter() { + + @Override + public void processTerminated(@NotNull ProcessEvent event) { + super.processTerminated(event); + } + @Override public void onTextAvailable(@NotNull ProcessEvent event, @NotNull Key outputType) { String line = event.getText(); diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsProcessor.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsProcessor.java index b159bd5614ab..46e63de75ef5 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsProcessor.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/project/MavenProjectsProcessor.java @@ -101,14 +101,13 @@ public class MavenProjectsProcessor { } private void startProcessing(final MavenProjectsProcessorTask task) { - MavenConsole console = MavenConsole.createGuiMavenConsole(myProject, "Maven", myProject.getBasePath()); MavenUtil.runInBackground(myProject, myTitle, myCancellable, new MavenTask() { @Override public void run(MavenProgressIndicator indicator) throws MavenProcessCanceledException { Condition condition = mavenProgressIndicator -> isStopped; indicator.addCancelCondition(condition); try { - doProcessPendingTasks(indicator, task, console); + doProcessPendingTasks(indicator, task); } finally { indicator.removeCancelCondition(condition); @@ -118,8 +117,7 @@ public class MavenProjectsProcessor { } private void doProcessPendingTasks(MavenProgressIndicator indicator, - MavenProjectsProcessorTask task, - MavenConsole console) + MavenProjectsProcessorTask task) throws MavenProcessCanceledException { int counter = 0; try { @@ -135,7 +133,9 @@ public class MavenProjectsProcessor { try { final MavenGeneralSettings mavenGeneralSettings = MavenProjectsManager.getInstance(myProject).getGeneralSettings(); - task.perform(myProject, myEmbeddersManager, console, indicator); + task.perform(myProject, myEmbeddersManager, + new SoutMavenConsole(mavenGeneralSettings.getOutputLevel(), mavenGeneralSettings.isPrintErrorStackTraces()), + indicator); } catch (MavenProcessCanceledException e) { throw e;