我正在遵循IntelliJ IDEA SDK的Run Configuration部分中的教程。
在学习完本教程之后,我将获得一个带有空的“启动前”部分的新配置面板。该部分是默认添加的。
默认情况下,我想指定一些目标,即至少要在几个插件中完成构建目标(请参见下图)
我试图了解操作方法,但是找不到任何示例或文档。
答案 0 :(得分:3)
build
任务?您的运行配置(在示例中为DemoRunConfiguration
)应实现RunProfileWithCompileBeforeLaunchOption
。该接口不提供任何实现方法,因此这是一种标记。 build
任务将自动添加,无需其他步骤。
before launch
部分?您的plugin.xml
应该包含一行stepsBeforeRunProvider
<stepsBeforeRunProvider implementation="com.MyBeforeRunProvider" id="myBeforeRun"/>
为此,您应该使用“运行前任务”创建“运行前提供程序”。
public class BeforeRunProvider extends BeforeRunTaskProvider<MyBeforeRunTask> {
@Override
public Key<MyBeforeRunTask> getId() {
return Key.create("ThisIsId");
}
@Override
public String getName() {
return "Nice name";
}
@Override
public String getDescription(MyBeforeRunTask task) {
return "Description";
}
@Nullable
@Override
public Icon getIcon() {
return AllIcons.Actions.Compile;
}
@Nullable
@Override
public MyBeforeRunTask createTask(@NotNull RunConfiguration runConfiguration) {
return new MyBeforeRunTask(getId());
}
@Override
public boolean executeTask(@NotNull DataContext dataContext, @NotNull RunConfiguration runConfiguration, @NotNull ExecutionEnvironment executionEnvironment, @NotNull MyBeforeRunTask myBeforeRunTask) {
return true;
}
}
任务:
public class MyBeforeRunTask extends BeforeRunTask<MyBeforeRunTask> {
protected MyBeforeRunTask(@NotNull Key<MyBeforeRunTask> providerId) {
super(providerId);
setEnabled(true);
}
}