はじめに
maven-pmd-pluginでexcludes
の設定をしていたら、
.*Dao.java : 含めたくない
.*APIDao.java : 含めたい
みたいな状況になって、FileSetでしか指定できないかと思ったら、正規表現でも設定できたって話。
こうやる
...
<excludes>
<!-- %regex[PATTERN]で指定してあげる -->
<exclude>%regex[^(?!.*API).*Dao\.java$]</exclude>
<!-- もちろん、FileSetでも指定可能 -->
<exclude>**/*Test.java</exclude>
</excludes>
...
注意
公式的には、
Can contain Ant-style wildcards and double wildcards.
と記載されているので、自己責任で。