【发布时间】:2019-09-20 07:46:43
【问题描述】:
在我的解决方案中,我想以自动方式检测未使用的代码,作为 CI 的一部分。更具体地说,我想分析一组项目(例如那些在/src 下但不是/test 的项目),然后在该范围内决定使用什么,不使用什么。例如:如果同一组内的所有引用项目都没有使用它,则较低级别项目中的 public 方法应该被标识为未使用(某些工具不会检测到,因为 @987654326 @member 也可以在解决方案之外使用,但我对此不感兴趣,因为我正在编写产品而不是要使用的库)。
几年前,我通过建立一个包含相关项目的 FxCop 项目,然后针对这些项目进行分析,从而能够使用 FxCop 实现这一目标。
今天,在 .NET Core 世界中,Roslyn 分析器似乎是要走的路(我在这里可能错了,如果有更好的替代工作请告诉我)但我不知道如何我可以设置一个跨越多个项目的规则集,并且分析器是否能够按照所述检测未使用的代码。查看Write Better Code Faster with Roslyn Analyzers等文章,似乎规则集只针对一个项目(即安装了Microsoft.CodeAnalysis.FxCopAnalyzers的项目)。
【问题讨论】:
-
如果您可以将您的代码与 SonarQube 集成,则可以通过代码分析指标提供未使用的代码
标签: .net-core static-analysis fxcop roslyn-code-analysis