如何调试MSBuild Customtask

Che*_*rra 14 msbuild debugging

我正在尝试调试我刚刚创建的MSBuild Customtask,但由于某种原因它永远不会在断点处停止.我甚至试过这个:

    public override bool Execute()
    {
        System.Diagnostics.Debugger.Break();
Run Code Online (Sandbox Code Playgroud)

并在该行添加了一个断点...我甚至删除了该方法中的所有其他代码,并没有改变任何东西.

是否有任何特殊要求能够调试MSBuild的自定义任务的创建?

Joe*_*nez 25

这有点像黑客,但你可以随时把这行代码放在你想要开始调试的地方:

System.Diagnostics.Debugger.Launch();
Run Code Online (Sandbox Code Playgroud)

当您调用它时,CLR将启动一个对话框,询问您要附加哪个调试器.

  • 完全可怕的答案!非常感谢! (2认同)

小智 7

这是我做的...在调试选项卡上的项目属性对话框中选择"启动外部应用程序" - 将C:\ WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe放在框中..

然后在命令行parms中,输入你的参数/ Target:Whatever test.proj

在自定义任务中放置一个代码停止并启动应用程序..