我编写了一个自定义 MSBuild 任务,称为 TaskA,它解析一个文件并对其进行一些处理。我现在想编写另一个 MSBUild 任务,称为 TaskB,在其中使用 TaskA。我知道我可以像普通类一样使用 TaskA,只需从 TaskB 调用它的 execute 方法。但是你觉得这靠谱吗?执行 TaskB 时,是否还会记录来自 TaskA 的日志消息?

最佳答案

是的,这是合理的,是的,来自 TaskA 的日志消息仍将被记录。
不要忘记将 taskA.BuildEngine 设置为 taskB 之一。

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;
    }
}

关于msbuild - 编写使用另一个自定义 MSBuild 任务的自定义 MSBuild 任务,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/700355/

10-13 07:18