我更新了构建工具中的程序集参考,以使用 microsoft.build、microsoft.build.engine 和 microsoft.build.framework 的最新版本 (v12)。但是,在使用 BuildManager 编译项目时(我使用 Rebuild 选项进行编译),它在目标处失败:CleanWebsitesPackageCore,错误为 MSB4127:“无法从程序集“C:\Program Files (x86) 实例化“CheckPathAttributes”任务)\MSBuild\Microsoft\VisualStudio\v12.0\Web\Microsoft.Web.Publishing.Tasks.dll"。请确认任务程序集是使用与安装的相同版本的 Microsoft.Build.Framework 程序集构建的您的计算机并且您的主机应用程序没有缺少 Microsoft.Build.Framework 的绑定重定向。无法转换类型为“Microsoft.Web.Publishing.Tasks”的对象。
需要注意的一点是,如果我尝试通过从命令提示符调用 MSBuild.exe 直接编译项目,它编译得很好。在查看日志时,我可以看到目标“CleanWebsitesPackageCore”在“干净”部分从未被调用。想知道为什么在使用 buildmanager 时调用目标而不是在命令提示符下直接调用 msbuild.exe 时调用目标?
任何人都知道为什么会这样。提前致谢。