sonar-server で新しい xpath-rule を作成し、品質プロファイルで有効にしました。sonar:sonar で maven-build を開始すると、このルールが使用され、違反が検出されます。Eclipse 内でローカル分析を開始すると、ルールが使用されません。ワークスペースで pmd.xml を見つけました。bei maven (workspace...\target\sonar) を使用する pmd.xml には、次のルールがあります。
<ruleset>
<rule class="net.sourceforge.pmd.rules.XPathRule" message="don't use hardcoded userid" name="XPathRule_1372166528">
<priority>2</priority>
<properties>
<property name="xpath">
<value><![CDATA[//PrimaryPrefix
[(Literal[((matches(@Image,'^"[A,E][A-Z][0-9]{5}"$')) .... ])
]]]></value>**
</property>
</properties>
</rule>
<rule ref="rulesets/strictexception.xml/AvoidRethrowingException">
<priority>3</priority>
</rule>
.........
</ruleset>
プラグインで使用される pmd.xml (ワークスペース ...\target\sonar-embedder-work) で、このルールが見つかりません。なぜこれが機能しないのか、何ができるのか誰かが知っていますか?
ありがとうございました
ヘディ