mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Use ProjectTaskRunner to build loose apps artifacts.
This commit is contained in:
+4
-4
@@ -20,13 +20,13 @@ import com.intellij.execution.BeforeRunTaskProvider;
|
||||
import com.intellij.execution.RunManagerEx;
|
||||
import com.intellij.execution.configurations.RunConfiguration;
|
||||
import com.intellij.icons.AllIcons;
|
||||
import com.intellij.openapi.compiler.CompileScope;
|
||||
import com.intellij.openapi.compiler.CompilerBundle;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.packaging.artifacts.Artifact;
|
||||
import com.intellij.packaging.artifacts.ArtifactPointer;
|
||||
import com.intellij.packaging.impl.compiler.ArtifactCompileScope;
|
||||
import com.intellij.task.ProjectTask;
|
||||
import com.intellij.task.ProjectTaskManager;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -115,7 +115,7 @@ public class BuildArtifactsBeforeRunTaskProvider extends BuildArtifactsBeforeRun
|
||||
}
|
||||
|
||||
@Override
|
||||
protected CompileScope createCompileScope(Project project, List<Artifact> artifacts) {
|
||||
return ArtifactCompileScope.createArtifactsScope(project, artifacts);
|
||||
protected ProjectTask createProjectTask(Project project, List<Artifact> artifacts) {
|
||||
return ProjectTaskManager.getInstance(project).createArtifactsBuildTask(true, artifacts.toArray(new Artifact[artifacts.size()]));
|
||||
}
|
||||
}
|
||||
|
||||
+4
-6
@@ -27,7 +27,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.ModalityState;
|
||||
import com.intellij.openapi.application.ReadAction;
|
||||
import com.intellij.openapi.application.Result;
|
||||
import com.intellij.openapi.compiler.*;
|
||||
import com.intellij.openapi.compiler.CompilerBundle;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogBuilder;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -149,12 +149,10 @@ public abstract class BuildArtifactsBeforeRunTaskProviderBase<T extends BuildArt
|
||||
if (myProject.isDisposed()) {
|
||||
return;
|
||||
}
|
||||
ProjectTaskManager projectTaskManager = ProjectTaskManager.getInstance(myProject);
|
||||
ProjectTask artifactsBuildProjectTask =
|
||||
projectTaskManager.createArtifactsBuildTask(true, artifacts.toArray(new Artifact[artifacts.size()]));
|
||||
ProjectTask artifactsBuildProjectTask = createProjectTask(myProject, artifacts);
|
||||
finished.down();
|
||||
Object sessionId = ExecutionManagerImpl.EXECUTION_SESSION_ID_KEY.get(env);
|
||||
projectTaskManager.run(new ProjectTaskContext(sessionId), artifactsBuildProjectTask, callback);
|
||||
ProjectTaskManager.getInstance(myProject).run(new ProjectTaskContext(sessionId), artifactsBuildProjectTask, callback);
|
||||
}, ModalityState.NON_MODAL);
|
||||
|
||||
finished.waitFor();
|
||||
@@ -193,5 +191,5 @@ public abstract class BuildArtifactsBeforeRunTaskProviderBase<T extends BuildArt
|
||||
|
||||
protected abstract T doCreateTask(Project project);
|
||||
|
||||
protected abstract CompileScope createCompileScope(Project project, List<Artifact> artifacts);
|
||||
protected abstract ProjectTask createProjectTask(Project project, List<Artifact> artifacts);
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.intellij.openapi.compiler.CompilerManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.packaging.artifacts.Artifact;
|
||||
@@ -48,6 +49,7 @@ import java.util.stream.Stream;
|
||||
*/
|
||||
public class InternalProjectTaskRunner extends ProjectTaskRunner {
|
||||
private static final Logger LOG = Logger.getInstance(InternalProjectTaskRunner.class);
|
||||
public static final Key<Object> EXECUTION_SESSION_ID_KEY = ExecutionManagerImpl.EXECUTION_SESSION_ID_KEY;
|
||||
|
||||
@Override
|
||||
public void run(@NotNull Project project,
|
||||
|
||||
Reference in New Issue
Block a user