SonarQube:sonar.exclusions 参数不能排除文件夹
Posted
技术标签:
【中文标题】SonarQube:sonar.exclusions 参数不能排除文件夹【英文标题】:SonarQube: sonar.exclusions parameter cannot exclude a folder 【发布时间】:2018-07-13 03:04:40 【问题描述】:我从事 symfony 项目,我想从 声纳分析 中排除一些生成的代码。
我想排除一个以此路径命名的文件夹:src/Application/Sonata。
我尝试了许多声纳排除的可能性,但徒劳无功:
sonar.exclusions=src/Application/Sonata/*
sonar.exclusions=src/Application/Sonata/**
sonar.exclusions=src/Application/Sonata/**/*
这是我的 sonar-project.properties 文件
# Required metadata
sonar.projectKey=project
sonar.projectName=project
sonar.projectVersion=0.1.3
# Description
sonar.projectDescription=project a base symphony 2
# Encoding of the source code
sonar.sourceEncoding=UTF-8
sonar.exclusions=src/Application/Sonata/**/* ,src/project/Resources/public/js/lib/**/*, src/project/Resources/public/js/jquery.validate.js
【问题讨论】:
我需要知道您执行了哪些步骤。您是否执行过以下操作:1. 运行项目的第一次分析 2. 配置sonar.exclusions
参数 3. 运行项目的第二次分析?
这些正是我所做的步骤。
【参考方案1】:
经过多次测试,我发现sonar.exclusions子句的语法正确:
sonar.exclusions=src/Application/Sonata/**/*,src/Simuleo5BOBundle/Resources/public/js/lib/**/*,src/Simuleo5BOBundle/Resources/public/js/jquery.validate.js
【讨论】:
【参考方案2】:从属性中正确设置排除项很难正确设置,这就是为什么不是documented。相反,您应该使用 UI 来设置排除项。
【讨论】:
这是不良做法的借口。缺乏文档是很难做到正确的原因。 就我而言,我需要根据不同的 CI 阶段设置属性的排除项。我想更多的人还需要根据一些自动化的工作来设置排除项。尽管很难做到正确,但这是我们唯一的选择。我完全同意曼宗廷的评论。此外,使某些东西难以使用并不是避免记录它的借口。 UI 不能在自动构建环境中使用。如果它存在于命令行,它应该被正确记录,以便它可以正确使用。以上是关于SonarQube:sonar.exclusions 参数不能排除文件夹的主要内容,如果未能解决你的问题,请参考以下文章