【发布时间】:2018-01-03 20:08:12
【问题描述】:
我正在尝试为我的 .NET Standard 2.0 类库进行代码分析。如here 所述,我添加了对Microsoft.CodeAnalysis.FxCopAnalyzers 的引用。一开始,一切看起来都很好,我在构建项目时开始收到 CA* 警告。然而,过了一会儿,这些警告消失了,虽然我没有碰过代码。
只有在关闭 VS 2017、删除所有 bin 目录、重新启动 VS 2017 之后,我才开始收到 CA* 警告。然而,这似乎不是让他们回来的秘诀:在我的 CI 环境中,同样的事情发生了。我在一次不相关的提交后丢失了警告,尽管我已经完全清理了结帐目录,但我仍然无法将它们恢复。
我想知道代码分析有时会停止工作的原因是什么。不幸的是,我还没有想出一种方法来重现这一点——这就是我的问题。
事实上,我很想知道为什么将 NuGet 添加到项目中会完全改变编译过程的结果。那个魔法是怎么起作用的?欢迎大家指点。
【问题讨论】:
-
1 月 18 日发布的当前最新版本(2.6.0 最终版)是否仍然存在您的问题?或者它可能固定在那里?
-
在 2.6.0 中,我收到一大堆
CSC : warning CS8032: An instance of analyzer Microsoft.NetFramework.CSharp.Analyzers.[...]Analyzer cannot be created from [...]\.nuget\packages\microsoft.netframework.analyzers\2.6.0\analyzers\dotnet\cs\Microsoft.NetFramework.CSharp.Analyzers.dll : Could not load file or assembly 'Microsoft.CodeAnalysis, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..警告。似乎是一个不同的问题,让我更加没有信心。
标签: c# .net-core code-analysis fxcop roslyn-code-analysis