如何使用 CPD 排除 XML 文件中的块?

How can I exclude blocks in XML files using CPD?

在大型项目中,会使用多个 android 资源。现在正好有资源被复制了。我想使用 CPD 检测这些副本。目前我正在使用以下命令:

./run.sh cpd --language xml --minimum-tokens 20 --files $RES_FOLDER

不幸的是,大多数 XML 文件至少包含一个声明行:

<?xml version="1.0" encoding="UTF-8" ?>

之后是一些 header:

<!--
  -- Copyright 2017, all rights reserved.
  -->

有一个选项--skip-blocks-pattern,但似乎被忽略了。

有人有什么提示吗?

恐怕目前无法完成。

--skip-blocks-pattern 是仅 cpp 标志,用于忽略 #if 0 ... #endif 块。

计划在不久的将来通过对所有/最受支持的语言的评论来提供忽略支持。我们最近在 Java 上试验性地添加了此类支持,到目前为止取得了良好的效果,因此我们可能很快会全面推广它。