下午:cpd

注意:这个目标应该用作 Maven 报告。

全名:

org.apache.maven.plugins:maven-pmd-plugin:2.5:cpd

说明:

为 PMD 的 CPD 工具创建报告。 有关详细信息,请参阅http://pmd.sourceforge.net/cpd.html 。

属性:

  • 需要执行 Maven 2.0 项目。
  • 自版本:2.0.

必需参数

姓名 类型 自从 描述
输出目录 File 2.0 最终 HTML 报告的输出目录。请注意,仅当目标直接从命令行运行或在默认生命周期期间运行时,才会评估此参数。如果目标作为站点生成的一部分间接运行,则使用在 Maven 站点插件中配置的输出目录。
目标目录 File 2.0 中间 XML 报告的输出目录。

可选参数

姓名 类型 自从 描述
总计的 boolean 2.2 是在根目录构建聚合报告,还是构建单独的报告。
默认值为:false。
排除根 File[] 2.2 应排除的项目源目录。
排除 String[] 2.2 要从检查中排除的文件列表。可以包含 Ant 风格的通配符和双通配符。请注意,这些排除模式仅在源文件相对于其源根目录的路径上运行。换句话说,文件是根据它们的包和/或类名排除的。如果要排除整个源根目录,请改用该参数excludeRoots 。
格式 String 2.0 除 HTML 报告外,还设置输出格式类型。必须是以下之一:“none”、“csv”、“xml”、“txt”或要使用的 PMD 渲染器的完整类名。有关可用的渲染器,请参阅 net.sourceforge.pmd.renderers 包 javadoc。如果正在使用 pmd:check 目标,则需要 XML。
默认值为:xml。
忽略标识符 boolean 2.5 类似于ignoreLiterals但对于标识符;即,变量名、方法名等。
默认值为:false。
忽略文字 boolean 2.5 如果为真,CPD 在评估重复块时会忽略文字值差异。这意味着foo=42;和 foo=43;将被视为等效。您可能希望在关闭此选项的情况下运行 PMD,然后将其打开以查看结果。
默认值为:false。
包括测试 boolean 2.2 在测试上运行 PMD。
默认值为:false。
包括 String[] 2.2 检查时要包含的文件列表。可以包含 Ant 风格的通配符和双通配符。默认为 **\/*.java。
链接外部参照 boolean 2.0 将违规行号链接到源外部参照。如果正在使用 jxr 插件,将自动创建链接。
默认值为:true。
minimumTokens int 2.0 在导致违规之前需要复制的最小令牌数。
默认值为:100。
输出编码 String 2.5 编写非 HTML 报告时的文件编码。
默认值为:${project.reporting.outputEncoding}。
跳过 boolean 2.1 跳过 CPD 报告生成。通过“-Dcpd.skip=true”在命令行上最有用。
默认值为:false。
源编码 String 2.3 读取 Java 源代码时使用的文件编码。
默认值为:${project.build.sourceEncoding}。
外部参照位置 File 2.0 要链接到的外部参照的位置。
默认值为:${project.reporting.outputDirectory}/xref。
外部参照测试位置 File 2.0 要链接到的测试外部参照的位置。
默认值为:${project.reporting.outputDirectory}/xref-test。

参数详情

聚合:

是在根目录构建聚合报告,还是构建单独的报告。
  • 类型:boolean
  • 自:2.2
  • 必需:No
  • 表达式:${aggregate}
  • 默认:false

排除根:

应排除的项目源目录。
  • 类型:java.io.File[]
  • 自:2.2
  • 必需:No

不包括:

要从检查中排除的文件列表。可以包含 Ant 风格的通配符和双通配符。请注意,这些排除模式仅在源文件相对于其源根目录的路径上运行。换句话说,文件是根据它们的包和/或类名排除的。如果要排除整个源根目录,请改用该参数excludeRoots 。
  • 类型:java.lang.String[]
  • 自:2.2
  • 必需:No

格式:

除 HTML 报告外,还设置输出格式类型。必须是以下之一:“none”、“csv”、“xml”、“txt”或要使用的 PMD 渲染器的完整类名。有关可用的渲染器,请参阅 net.sourceforge.pmd.renderers 包 javadoc。如果正在使用 pmd:check 目标,则需要 XML。
  • 类型:java.lang.String
  • 自:2.0
  • 必需:No
  • 表达式:${format}
  • 默认:xml

忽略标识符:

类似于ignoreLiterals但对于标识符;即,变量名、方法名等。
  • 类型:boolean
  • 自:2.5
  • 必需:No
  • 表达式:${cpd.ignoreIdentifiers}
  • 默认:false

忽略文字:

如果为真,CPD 在评估重复块时会忽略文字值差异。这意味着foo=42;和 foo=43;将被视为等效。您可能希望在关闭此选项的情况下运行 PMD,然后将其打开以查看结果。
  • 类型:boolean
  • 自:2.5
  • 必需:No
  • 表达式:${cpd.ignoreLiterals}
  • 默认:false

包括测试:

在测试上运行 PMD。
  • 类型:boolean
  • 自:2.2
  • 必需:No
  • 默认:false

包括:

检查时要包含的文件列表。可以包含 Ant 风格的通配符和双通配符。默认为 **\/*.java。
  • 类型:java.lang.String[]
  • 自:2.2
  • 必需:No

链接外部参照:

将违规行号链接到源外部参照。如果正在使用 jxr 插件,将自动创建链接。
  • 类型:boolean
  • 自:2.0
  • 必需:No
  • 表达式:${linkXRef}
  • 默认:true

最小代币:

在导致违规之前需要复制的最小令牌数。
  • 类型:int
  • 自:2.0
  • 必需:No
  • 表达式:${minimumTokens}
  • 默认:100

输出目录:

最终 HTML 报告的输出目录。请注意,仅当目标直接从命令行运行或在默认生命周期期间运行时,才会评估此参数。如果目标作为站点生成的一部分间接运行,则使用在 Maven 站点插件中配置的输出目录。
  • 类型:java.io.File
  • 自:2.0
  • 必需:Yes
  • 表达式:${project.reporting.outputDirectory}

输出编码:

编写非 HTML 报告时的文件编码。
  • 类型:java.lang.String
  • 自:2.5
  • 必需:No
  • 表达式:${outputEncoding}
  • 默认:${project.reporting.outputEncoding}

跳过:

跳过 CPD 报告生成。通过“-Dcpd.skip=true”在命令行上最有用。
  • 类型:boolean
  • 自:2.1
  • 必需:No
  • 表达式:${cpd.skip}
  • 默认:false

源编码:

读取 Java 源代码时使用的文件编码。
  • 类型:java.lang.String
  • 自:2.3
  • 必需:No
  • 表达式:${encoding}
  • 默认:${project.build.sourceEncoding}

目标目录:

中间 XML 报告的输出目录。
  • 类型:java.io.File
  • 自:2.0
  • 必需:Yes
  • 表达式:${project.build.directory}

外部参照位置:

要链接到的外部参照的位置。
  • 类型:java.io.File
  • 自:2.0
  • 必需:No
  • 默认:${project.reporting.outputDirectory}/xref

外部参照测试位置:

要链接到的测试外部参照的位置。
  • 类型:java.io.File
  • 自:2.0
  • 必需:No
  • 默认:${project.reporting.outputDirectory}/xref-test