可以将 MSBuild 目标和任务配置为在 MSBuild 中以进程外运行,从而可以在不同于整体构建运行的上下文中运行任务。 当运行与 64 位 MSBuild 不兼容的任务以及面向不同版本的 .NET Framework 时,这非常有用。
例如,当开发计算机运行在 64 位 .NET Framework 4.7.2 操作系统上时,可以面向 32 位 .NET Framework 3.5 SP1 应用程序。 32 位或 64 位位数与特定 .NET Framework 版本的组合被称为 目标上下文。
Tasks
MSBuild 在进程外运行某些生成任务,以面向更大的上下文集。 例如,32 位 MSBuild 可能会在 64 位进程中运行生成任务。 这由 UsingTask 参数和 Task 参数控制。 MSBuild 安装的目标会设置这些参数和参数,无需进行任何更改即可为不同目标上下文构建应用程序。
如果要创建自己的目标上下文,则必须相应地设置这些参数和论点。 有关示例,请查看 Microsoft.Common.targets 文件和 Microsoft.Common.Tasks 文件。 有关如何创建自定义任务(可使用多个目标上下文)或如何修改现有任务的信息,请参阅 “如何:配置目标和任务”。
配置不正确导致的错误
配置中的错误可能会导致任务失败,并出现 MSB4018 或 MSB4062 错误。