你好sonarqube专家,
我正在运行sonarqube 5.2服务器和JavaScript插件v.2.13。我想从我的分析中排除一些第三方库(例如jQuery)的JavaScript代码。我怎样才能做到这一点? 我试过这样的事情:
sonar.module= myModule
myModule.sonar.sources=srcFolder
myModule.sonar.exclusions=**/notMyCode/*.js
我可以在日志中看到正在选择排除过滤器:
Excluded sources: =**/notMyCode/*.js;
但是它似乎被忽略了,因为无论如何都要分析所有文件:
索引的101个文件
由于包含/排除模式而忽略了0个文件
我尝试了所有可能的排除模式,似乎没有任何工作,即使我这样说:
sonar.exclusions=*.js
这应排除所有javascript文件,但完全忽略排除过滤器。
通过反复试验发现,如果使用“全局”限定符,则排除模式会起作用。 例如,以下按预期工作:
sonar.global.exclusions=**/notMyCode/*.js;
虽然这个没有:
myModule.sonar.exclusions=**/notMyCode/*.js;
这是预期的行为吗?
答案 0 :(得分:1)
这是无效的:
sonar.module= myModule
你可能想写这个(复数"模块"):
sonar.modules = myModule
在documentation的几个示例中演示了sonar.modules
的使用。
通过此更正,排除应按预期工作,
全球和项目特定的。
还要确保您使用正确的水滴图案, 正如here所述。
最后,在您的上一个示例中,您在行尾使用了终止;
,例如myModule.sonar.exclusions=**/notMyCode/*.js
,您应该删除它们。