- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在使用 PHPMD ( http://phpmd.org/ ),对此我还很陌生。MD 有效,我现在正在编写一个规则集来配置应使用的指标。我没有单独包含每个规则,而是加载了整个规则集。但是现在我有一个问题,如果我包含整个集合,我不知道如何配置单个规则的属性。
比如我想用规则来检查圈复杂度。我可以用
<?xml version="1.0"?>
<ruleset name="Demo PHPMD rule set"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
<description> custom ruleset that checks the code </description>
<rule ref="rulesets/codesize.xml/CyclomaticComplexity">
<properties>
<property name="reportLevel" value="11" />
</properties>
</rule>
</ruleset>
但是如果我想使用该规则集中的所有规则,我可以简单地写
<?xml version="1.0"?>
<ruleset name="Demo PHPMD rule set"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
<description> custom ruleset that checks the code </description>
<rule ref="rulesets/codesize.xml" />
</ruleset>
现在,当我包含整个规则集时,如何使用属性的配置(在我的例子中是圈复杂度的 reportLevel)?我试过类似的东西
[...]
<rule ref="rulesets/codesize.xml">
<properties>
<property name="CyclomaticComplexity.reportLevel" value="11" />
</properties>
</rule>
[...]
但这没有用。我在文档中进行了搜索,但从未在任何地方找到这方面的示例。
最佳答案
我发现实现此目的的唯一方法是使用 exclude 元素,包括规则集中除您要自定义的规则之外的所有规则,然后单独包括它。
<?xml version="1.0"?>
<ruleset name="Demo PHPMD rule set"
xmlns="http://pmd.sf.net/ruleset/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
<description> custom ruleset that checks the code </description>
<rule ref="rulesets/codesize.xml">
<exclude name="CyclomaticComplexity"/>
</rule>
<rule ref="rulesets/codesize.xml/CyclomaticComplexity">
<properties>
<property name="reportLevel" value="11" />
</properties>
</rule>
</ruleset>
关于PHPMD - 包含整个规则集并配置属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27173711/
我一直在尝试配置 phpmd 以与 PhpStorm 一起工作,但我被困在这里。这是我遇到的错误: PHP Mess Detector phpmd: Can not correctly run the
我正在使用 PHPMD ( http://phpmd.org/ ),对此我还很陌生。MD 有效,我现在正在编写一个规则集来配置应使用的指标。我没有单独包含每个规则,而是加载了整个规则集。但是现在我有一
我尝试使用下面的注释在 Windows 计算机上安装 PHPMD $ git clone git://github.com/phpmd/phpmd.git cd phpmd $ git submodu
我被要求在工作中实现 PHPMD(以及 PHPCS……我想是另一个即将发布的问题)。我也不是很精通 Linux。对不起。 我遵循了 PHPMD 上的下载说明。我使用 Composer 并正确获取了所有
我正在使用 PHP Mess Detector 1.5.0 并遇到一些问题,我认为这些问题都不是问题。 class FOO { const NEW_LINE = "\n"; const
我刚开始使用 PHP Mess Detector (PHPMD),想了解一些参数。例如,命名规则给我这样的输出: "Avoid variables with short names like $id.
这两个PHP类方法违反了Single Responsibility Principle (SRP)根据phpmd rule booleanargumentflag . 应该怎样写才能避免这种情况? 如
我刚刚安装了PHPMD和 PHPCS与我的项目。 现在,我想对它们进行一些定制,但似乎无法实现。 我收到 2 个我想为我的所有项目删除的警告: phpcs:公共(public)方法名MyTests::
我有 Ubuntu 14.04 + Sublime text 3 并安装了 phpcs 软件包 另外我已经在我的系统上安装了phpcs和php-cs-fixer 来自this blog 我发现phpm
我正在尝试自动化我的测试。作为冒烟测试,我想在继续实际的单元测试之前用 PHPMD 检查我的 PHP 代码。听起来很明智吧? 当我的 PHP 文件中出现 fatal error 时,PHPMD 似乎会
我正在尝试为 phpmd 中的规则设置一个异常(exception),以允许一个特定函数名称的长度仅为 2 个字符 之前的 phpmd.xml.dist 文件运行得非常愉快:
我正在考虑对现有 PHP 项目进行一些静态代码分析,但我无法理解 PHP_CodeSniffer、PHPMD 和 PHP Depend 之间的区别。这些只是同一问题的替代方案,还是它们在某些方面相互补
我试图了解圈复杂度的工作原理以及如何避免警告。是的,我明白编写代码的目的不是避免任意警告,但我至少想知道发生了什么,以便我可以决定我看到的代码是好还是坏。 我有一个看起来像的函数: protected
在 Sublime Text 3 中,我通过 Package Manager 安装了以下软件包: SublimeLinter SublimeLinter-phpmd SublimeLinter-php
在我的项目中,某些目录和某些 php 文件的大小非常大,因此我的构建失败了,我想将它们排除在我的 build.xml 中。 问题1- 我必须写--ignore="path/filename"吗?对于项
我是一名优秀的程序员,十分优秀!