【问题标题】:How do I integrate StyleCop 4.7 with Visual Studio 2013?如何将 StyleCop 4.7 与 Visual Studio 2013 集成?
【发布时间】:2014-07-01 15:11:04
【问题描述】:

我真的很想将 StyleCop 与我的 Visual Studio 2013 一起使用,但不幸的是它不起作用。我已经从official site 安装了 4.7 版本,检查了所有选项,包括 VS Studio 集成和 MSBuild 集成,遵循精确的说明(下载,在 VS 应用程序关闭时安装,然后启动 VS)但它只是不会显示在我的 Visual Studio 2013 中。

StyleCop 网站说它应该与 VS2013 兼容。它不会在工具下显示与 StyleCop 相关的任何内容,并且当我右键单击我的 C# 项目时,它不会显示“运行 StyleCop”操作。已经尝试了安装菜单中的修复选项,甚至重新安装了它。没有任何进展。

有人可以帮我解决这个问题吗?也许有人以前有过这方面的经验?提前致谢!

【问题讨论】:

  • 您使用的是哪个版本的 Visual Studio(Express、Professional 等)?
  • 好点,我目前正在使用专业版。
  • 作为替代方案,您可以将 StyleCop.MSBuild NuGet 包安装到您的项目中,以便 StyleCop 的引用与您的源代码一起传播,并且分析在任何地方的每个构建中运行。这消除了在您使用的每台机器上安装 StyleCop 的需要,包括构建服务器。
  • 您的意思是作为某种库而不是与 VS2013 集成?如果集成的事情真的没有成功,这听起来是个好主意。感谢您的提示。

标签: visual-studio-2013 stylecop


【解决方案1】:

打开视觉工作室 从 TOOLS > LIBRARY PACKAGE MANAGER 菜单打开包管理器控制台

运行以下命令

install-package stylecop.msbuild

上述命令将下载最新的稳定所需的 dll 和文件,并将 style cop 与您的项目集成。构建您的项目,任何 stylecop 错误都将显示在警告部分。

如果由于某种原因在上述菜单中找不到包管理器,请参阅此链接以获取有关如何安装 http://surajdeshpande.wordpress.com/2013/10/18/how-to-install-a-nuget-package-in-visual-studio/ 的说明

如果您希望只有在所有 stylecop 错误都得到修复后才能成功构建,您需要对项目文件进行一些更改以设置布尔值以不将 stylecop 错误视为警告。

在记事本中打开项目的 .csproj 文件,然后找到文件中的第一个 PropertyGroup 部分。添加一个新标签以将 StyleCopTreatErrorsAsWarnings 标志设置为 false。例如:

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>8.0.50727</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{4B4DB6AA-A021-4F95-92B7-B88B5B360228}</ProjectGuid>
    <OutputType>WinExe</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>TestProject</RootNamespace>
    <AssemblyName>TestProject</AssemblyName>
    <StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
  </PropertyGroup>

上面显示了带有&lt;StyleCopTreatErrorsAsWarnings&gt;false&lt;/StyleCopTreatErrorsAsWarnings&gt; 的示例项目文件内容。

只有在修复所有 sylecop 错误后,构建才会成功。

【讨论】:

    【解决方案2】:

    以前的答案似乎在 2015 年被弃用..

    对于 VS 社区 2013 更新 5:

    1) 安装“JetBrains ReSharper Ultimate 2015.2 [En]”

    2) 转到 Resharper-> 扩展:

    3) 从那里安装 Resharper.Stylecop

    更新:好的,适用于 ReSharper Ultimate 10.0.2 + StyleCop by JetBrains 4.8 我收到此错误:https://resharper-support.jetbrains.com/hc/en-us/community/posts/206009179-StyleCop-integration-with-ReSharper-10-x-VS2015- 但建议忽略此错误。重启VS后似乎可以工作

    (我也安装了reSP,用于Sharepoint代码分析)

    【讨论】:

    • 请使用“JetBrains 的 StyleCop”扩展而不是“ReSharper.StyleCop”。它修复了许多崩溃、内存泄漏和性能问题,并且不需要安装 StyleCop Visual Studio 插件。
    【解决方案3】:

    我已使用以下步骤将 stylecops 4.7 与 Visual Studio 2013 (Web) 集成。

    1. 为了将 StyleCop 与项目集成,需要将 &lt;Import&gt; 添加到 .csproj 文件(版本和路径可能不同):

    如果您使用官方安装程序并安装了“MSBuild 集成”组件,您的&lt;Import&gt; 将如下所示:

    <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 
    <!-- Your StyleCop <Import> will go here -->
    <Import Project="$(ProgramFiles)\MSBuild\StyleCop\v4.7\StyleCop.targets" />
    

    注意:您需要在解决方案中的每个项目中添加上述行。

    1. 从解决方案根文件夹的 C:\Program Files\StyleCop 4.7 复制项目解决方案文件夹中的 Settings.StyleCop 或添加为解决方案项。

    2. 双击Settings.StyleCop文件配置规则。您应该可以在项目中使用 stylecops。

    【讨论】:

    • 嗨,我已尝试格式化您的答案以使其更具可读性。请重新检查以确保它是正确的。
    猜你喜欢
    • 1970-01-01
    • 2012-07-12
    • 2017-12-07
    • 2015-09-27
    • 2019-05-15
    • 2012-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多