我正在尝试整合Sonar进行代码审查和分析。我正在使用typo3,所以我在rules.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<rules>
<rule key="TYPO3.Commenting.FunctionDocComment.TagIndenst"
priority="MAJOR">
<category name="Maintainability" />
<name>Tag comment incorrectly indented</name>
<configKey>TAG_INDENT</configKey>
<description>@category tag comment incorrectly indented</description>
</rule>
<rule
key="TYPO3.Commenting.NoAuthorAnnotationInFunctionDocComment.AuthorAnnotation"
priority="MAJOR">
<category name="Maintainability" />
<name>NoAuthorAnnotationInFunctionDocComment</name>
<configKey>TAG_INDENT</configKey>
<description>@category tag comment incorrectly indented</description>
</rule>
<rule key="TYPO3.Commenting.ValidCommentIndent.ValidCommentIndent"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidCommentIndent</name>
<configKey>T_COMMENT</configKey>
<description>@category tag comment incorrectly indented</description>
</rule>
<rule key="TYPO3.Commenting.ValidCommentLineLength.ValidCommentLineLength"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidCommentLineLength</name>
<configKey>T_COMMENT, T_DOC_COMMENT</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Commenting.ValidCommentLineLength.ValidCommentLineLength"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidCommentLineLength</name>
<configKey>T_COMMENT, T_DOC_COMMENT</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.ControlStructures.AlignedBreakStatement.AlignedBreakStatement"
priority="MAJOR">
<category name="Maintainability" />
<name>AlignedBreakStatement</name>
<configKey>T_BREAK,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.ControlStructures.DisallowEachInLoopCondition.DisallowEachInLoopCondition"
priority="MAJOR">
<category name="Maintainability" />
<name>DisallowEachInLoopCondition</name>
<configKey>T_WHILE,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.ControlStructures.DisallowElseIfConstruct.DisallowElseIfConstruct"
priority="MAJOR">
<category name="Maintainability" />
<name>DisallowElseIfConstruct</name>
<configKey>T_WHILE,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.ControlStructures.ValidBreakStatementsInSwitches.ValidBreakStatementsInSwitches"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidBreakStatementsInSwitches</name>
<configKey>T_BREAK,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.ControlStructures.ValidDefaultStatementsInSwitches.ValidDefaultStatementsInSwitches"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidDefaultStatementsInSwitches</name>
<configKey>T_SWITCH,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Debug.DebugCode.DebugCode"
priority="MAJOR">
<category name="Maintainability" />
<name>DebugCode</name>
<configKey>T_STRING, T_COMMENT,</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Files.EncodingUtf8.EncodingUtf8"
priority="MAJOR">
<category name="Maintainability" />
<name>EncodingUtf8</name>
<configKey>T_OPEN_TAG</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Files.IncludingFile.IncludingFile"
priority="MAJOR">
<category name="Maintainability" />
<name>IncludingFile</name>
<configKey>T_INCLUDE_ONCE, T_REQUIRE, T_INCLUDE</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Files.LowercasedFilename.LowercasedFilename"
priority="MAJOR">
<category name="Maintainability" />
<name>LowercasedFilename</name>
<configKey>T_OPEN_TAG</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Files.OneClassPerFile.OneClassPerFile"
priority="MAJOR">
<category name="Maintainability" />
<name>OneClassPerFile</name>
<configKey>T_CLASS</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.Files.OneInterfacePerFile.OneInterfacePerFile"
priority="MAJOR">
<category name="Maintainability" />
<name>OneInterfacePerFile</name>
<configKey>T_INTERFACE</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.NamingConventions.ValidFunctionName.ValidFunctionName"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidFunctionName</name>
<configKey>T_FUNCTION</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.NamingConventions.ValidVariableName.ValidVariableName"
priority="MAJOR">
<category name="Maintainability" />
<name>ValidVariableName</name>
<configKey></configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.PHP.CharacterAfterPHPClosingTag.CharacterAfterPHPClosingTag"
priority="MAJOR">
<category name="Maintainability" />
<name>CharacterAfterPHPClosingTag</name>
<configKey>T_CLOSE_TAG</configKey>
<description>@category</description>
</rule>
<rule key="TYPO3.PHP.CharacterBeforePHPOpeningTag.CharacterBeforePHPOpeningTag"
priority="MAJOR">
<category name="Maintainability" />
<name>CharacterBeforePHPOpeningTag</name>
<configKey>T_OPEN_TAG</configKey>
<description>@category</description>
</rule>
</rules>
当代码分析我无法得到任何违规行为时,请帮忙???
答案 0 :(得分:0)
我想您遵循了解释如何向Sonar规则存储库添加新规则的指南:http://docs.codehaus.org/display/SONAR/Extending+PHP+Coding+Rules#ExtendingPHPCodingRules-ExtendingPHPCodesnifferRules
但您可能尚未将这些新规则添加到您正在使用的质量配置文件中。这就是为什么你没有违规。请查看此页面,了解如何处理声纳中的质量配置文件:http://docs.codehaus.org/display/SONAR/Quality+Profiles