开发者

How do I get the <Message> MSBuild task to show up in the Visual Studio project output?

I'm trying to printf debug my Visual Studio project file by spewing messages to the console like this:

<Target Name="BeforeBuild">
  <Message Text="+++++++++++++++++++++++ Justin Dearing ++++++++++++++++++++++++++++++++++++" />
</Target>

This works from the command line:

BeforeBuild:
  +++++++++++++++++++++++ Justin Dearing ++++++++++++++++++++++++++++++++++++

However, the messages don't show up in the Visual Studio 2010 build output. Is there an alternative MSBuild task I can use, or a setting in Visual Studio I can enable to make these m开发者_JS百科essages appear?


Add the Importance attribute with value High to Message.

Like this:

<Message Importance="High" Text="+++ Justin Dearing +++" />


To change the build output verbosity shown in the Visual Studio 2010 window, open the Options dialog and select the Build and Run settings below the Projects and Solutions node.

Unless you explicitly specify a low message importance, your messages should show up at Normal verbosity or higher.


For anyone reading this with MSBuild 16, bear in mind that you can't use message at the project level. You now need to first define InitialTargets

<Project InitialTargets="Test" ...

And then create a task to place the message in:

  <Target Name="Test">
      <Message Importance="High" Text="A Message" />
  </Target>


In VisualStudio 2019 a <Message> disappears from Build log if any <Error> Task occurs in "Build" target (and others?) even if <Error> is after <Message>.

In contrast msbuild.exe 16.8.2.56705 displays <Message> in any case.

[Question only implies by example that BeforeBuild is used, I answered anyway as the question title and text perfectly matched my problem that the message was not shown]

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜