ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Roslyn让编译时候Message内容默认输出

2021-06-29 15:55:44  阅读:178  来源: 互联网

标签:输出 代码 小伙伴 默认 编译 消息 Roslyn Message


title author date CreateTime categories
Roslyn 让编译时候 Message 内容默认输出 lindexi 2019-07-01 14:16:59 +0800 2019-6-28 9:57:4 +0800 Roslyn MSBuild 编译器

默认无论是在 VisualStudio 还是在 dotnet 命令行都会忽略项目文件或安装库里面的消息输出,而吕水小伙伴给了一个馊主意将所有需要输出给用户的消息换为警告,因为默认是会输出警告,于是消息就可以输出了。然后某个小伙伴就过来打我,因为他一编译整个项目原本是没有警告的,现在有很多警告。于是我就在找是否有方法可以做到让消息的内容默认输出

在编译的时候需要期望输出所有的消息,可以添加输出的日志等级,详细请看How to output the target message in dotnet build command line

但是我的小伙伴是在 VisualStudio 编译的,他不期望输出的内容太多,而我又期望给他一点输出,特别是注明他现在使用的这个库是基于 GLWTPL 协议做的

GLWTPL 协议

When I wrote this, only God and I understood what I was doing.
Now, only God knows.

当我写下这段代码的时候,只有上帝和我知道这是什么
现在只有上帝知道

也就是现在代码除了上帝没有知道是做什么

如果我写成 Message 默认小伙伴是不会看到,但如果我写成 Warning 他又会打我,好在有消息有一个属性,请看代码

  	<Message Importance="High" Text="林德熙是逗比" />

添加属性 Importance 指定这个消息是否重要,如果指定为重要,那么消息默认就会输出

请试试将下面代码放在你的 csproj 文件中,然后点击编译

  <Target Name="Lindexi" BeforeTargets="Build">
    <Message Importance="High" Text="林德熙是逗比" />
  </Target>

上面代码如果写在了 NuGet 库,可以在小伙伴安装我的库的时候编译就输出消息内容

标签:输出,代码,小伙伴,默认,编译,消息,Roslyn,Message
来源: https://blog.51cto.com/u_11283245/2954557

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有