编写一个自定义的MSBuild任务,使用另一个自定义的MSBuild任务。

4

我已经编写了一个自定义的MSBuild任务,称为TaskA,它解析文件并对其进行一些处理。现在我想编写另一个MSBUild任务,称为TaskB,在其中使用TaskA。我知道我可以像普通类一样使用TaskA,并从TaskB调用其execute方法。但您认为这是可行的吗?当执行TaskB时,TaskA的日志消息仍将被记录吗?

1个回答

7

是的,这是可行的,而且来自TaskA的日志消息仍将被记录。 不要忘记将taskA.BuildEngine设置为taskB的BuildEngine。

public class TaskA : Task
{
    public override bool Execute()
    {
        Log.LogMessage("Task A");

        return true;
    }
}

public class TaskB : Task
{
    public override bool Execute()
    {
        Log.LogMessage("Task B");

        TaskA taskA = new TaskA();
        taskA.BuildEngine = BuildEngine;

        taskA.Execute();

        return true;
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接