如何告诉SonarQube将PSR2标准与CodeSniffer一起使用

时间:2014-02-19 13:34:53

标签: php sonarqube codesniffer

我想在SonarQube中创建一个扩展PSR2规则的质量配置文件。当我使用下面的xml创建一个时,声纳向我显示以下错误:

  

无法导入未知的PhpCodeSniffer规则'PSR2'考虑在声纳扩展目录中添加扩展名

<?xml version="1.0"?>
<ruleset name="test">
    <description>test coding standard (extend PSR2).</description>

    <!-- Include the whole PSR-2 standard -->
    <rule ref="PSR2">
        <exclude name="Generic.Files.LineLength" />
    </rule>

    <!-- Include pear commenting standards -->
    <rule ref="PEAR.Commenting.InlineComment"/>

</ruleset>

我已经安装了带有PHP插件的声纳3.7.4和使用pear的PHP_CodeSniffer。 CodeSniffer有以下标准:

$ phpcs -i
The installed coding standards are MySource, PEAR, PHPCS, PSR1, PSR2, Squiz and Zend

我在声纳中错过了一些配置吗?我该怎么做才能创建我想要的质量档案?

1 个答案:

答案 0 :(得分:0)

Sonar php plugin 2.2支持PSR-2。

此外,从插件版本2.0,

  

已删除对外部工具的依赖性:即PHPDepend,   PHPCodeSniffer,PHPMD,PHPUnit。

这些适用于声纳-3.7及以上。