首页 > 其他分享 >基于Sonar和.editorconfig的代码lint

基于Sonar和.editorconfig的代码lint

时间:2024-07-10 10:53:45浏览次数:5  
标签:enable 代码 lint editorconfig Sonar build

基于Sonar和.editorconfig的代码lint

在项目根目录下创建Directory.Build.props文件,在里面引入SonarAnalyzer.CSharp包:

<Project>
  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <LangVersion>latest</LangVersion>
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  </PropertyGroup>
​
  <ItemGroup>
    <PackageReference Include="SonarAnalyzer.CSharp" Version="9.28.0.94264">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>
</Project>

在项目根目录下创建.editorconfig,里面定义好代码规范,然后执行dotnet build即可。

Sonar中有些默认规则可能不符合组内规范,可以在.editorconfig中就行自定义配置。这两个工具结合起来就可以在本地执行lint也可以集成到CI流程中。

 

推荐阅读

enable code-style analysis on build

NET code style rule options

标签:enable,代码,lint,editorconfig,Sonar,build
From: https://www.cnblogs.com/Cwj-XFH/p/18293470

相关文章

  • Visual Studio 使用 EditorConfig 定义一致的编码样式
    代码一致性EditorConfig文件设置可在代码库中保持一致的编码样式和约定,无论使用哪种编辑器或IDE。可以控制缩进样式、制表符宽度、行尾字符和编码等编码样式。例如,如果C#代码库具有缩进使用五个空格字符、文档使用UTF-8编码,并且行以CR/LF结尾的约定,则可以将EditorCon......
  • 优化代码以避免 ESLint 的 array-callback-return 错误,需要确保 map 函数中的每个回调
    要优化这段代码以避免ESLint的array-callback-return错误,你需要确保map函数中的每个回调都返回一个值或者通过早期返回来处理。在你的例子中,你只在满足特定条件时返回元素。ESLint的规则要求每个数组迭代都应有返回值,否则它会抛出警告。一种解决方案是在不满足任何条件......
  • 基于springboot用“异常处理器“捕获解决“数据库信息录入重复“的问题“SQLIntegrity
    前言 当我们编写后端时,会遇到一个问题,那就是:假如A用户向我们的数据库录入完登录信息后(姓名,账号等),B用户同样采用了一个相同的姓名提交了登录信息,那这个时候就不满足username的唯一约束,此时数据库就会报错例如报错如下:Duplicateentry'····'forkey'····'提示......
  • this.$refs[tab.$attrs.id].scrollIntoView is not a function
    打印this.$refs[tab.$attrs.id].scrollIntoView 在控制台看到的是一个undefined是因为this.$refs[tab.$attrs.id]不是一个dom是一个vuecomponent如图所示:所以我用的这个document.querySelector(`.${tab.$attrs.id}`)获取domdocument.querySelector(`.${tab.$attrs......
  • 前端vue/react通用工程化eslint prettier stylelint husky项目规范(新手入门详细教程)
    前言本文章内的项目基于vite+react+ts搭建,但通篇并未涉及react的东西,所以可以通用。适合新手入门的工程化项目规范,最小化的完成代码规范和git提交规范,开发工具使用vscode。为什么是最小化?本意是为了让大家都能看懂入手这些规范,很多文章中,都长篇进行自定义的配置,其......
  • SonarQube集成Jenkins平台搭建
    SonarQube平台搭建一、项目搭建的必要条件SonarQube8.9.10previousLTS依据公司现有服务目前的Jdk版本1.8,需要选择一个适用的长期支持版本,我在这里选用的是SonarQube8.9.10previousLTS。下载地址:DownloadPreviousSonarQubeVersions|SonarPostgreSQL12根据官......
  • sonarqube的API接口(持续补充)
    1.查看sonarqube的违规问题API{sonar_url}/api/issues/search?componentKeys={project_key}1-1如果要限制违规级别如下:{sonar_url}/api/issues/search?componentKeys={project_key}&severities=BLOCKER,CRITICAL1-2如果设置每页展示的数量和页码(只支持每页500条,20页的数据展示......
  • 将sonaruqbe中配置所有项目的阻断严重级别的违规导出cvs文件中,对TOP问题形成解决方案
    1.遇到问题1-1.导出cvs文件乱码,解决办法:通过设置pycharm的文件编码为UTF-81-2.sonarqube提供的API接口,默认只展示第一页的100条数据,解决办法:经过测试,API接口每页最多展示500条数据,只支持20页展示,所以要对URL加参数细化结果,再通过翻页获取全部的数据,具体实现如下所示2.最终生......
  • sonarqube集成jenkins做代码质量管控
    1Jenkins安装sonarqube-scanner2Jenkins上配置SonarQubeScanner全局工具入口:系统管理—系统配置—全局工具配置,找到sonarqubescanner,如下图。其中第3点选择4-1下载好的sonarqubescanner即可。3Jenkins上添加凭证入口:系统管理-安全-凭证-添加凭证4Jenkins上做SonarQ......
  • 开源C++静态代码检测工具clang-tidy、cppcheck和oclint的比较
    以下是clang-tidy、cppcheck和oclint的比较关于Clang-Tidy的使用请参考:使用Clang-Tidy进行静态代码分析:完整的配置与CMake集成实例关于Cppcheck的使用请参考:使用Cppcheck进行静态代码分析:完整的shell脚本与CMake集成实例关于OCLint的使用请参考:使用OCLint......