专栏名称: dotNET跨平台
专注于.NET Core的技术传播。在这里你可以谈微软.NET,Mono的跨平台开发技术。在这里可以让你的.NET项目有新的思路,不局限于微软的技术栈,横跨Windows,Linux 主流平台
今天看啥  ›  专栏  ›  dotNET跨平台

实现自定义的 msbuild logger

dotNET跨平台  · 公众号  ·  · 2024-09-15 09:10

文章预览

实现并使用自定义的 msbuild logger Intro 最近想改一下项目,发现有很多警告,想把所有的 warning 导出到 JSON 以方便统计 warning 类型以及出现的次数,但是目前 dotnet build 还不支持,于是想提一个 issue 希望支持一下,然后有大佬说可以自定义一个 msbuild logger 来实现,.NET SDK 里的 Terminal Logger 也是这种方式实现的,于是就找了下文档动手尝试了一下,分享一下,希望对大家有所帮助 Implement 首先我们来创建一个新的类库项目,并添加 Microsoft.Build.Framework nuget 包的引用 然后就可以创建一个 logger,实现: Microsoft.Build.Framework.ILogger 接口即可,代码实现如下: public   sealed   class   JsonErrorLogger  :  ILogger {      private   const   string  ErrorLogFileName =  "json-error-logger.json" ;      private   static   readonly  JsonSerializerOptions JsonSerializerOptions =  new ()     {       ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览