Configuring clover exclude file patterns
Greetings,
I have clover 3.0 setup using ant, with the following file exclusions:
<clover-setup initString="${clover.initstring}" flushpolicy="threaded" flushinterval="30000">
<methodContext name="tostring" regexp="(.* )?public String toString\(.*\).*" />
<files>
<exclude name="**/*Test.java" />
<exclude name="**/entity/fields/*.java" />
</files>
</clover-setup>
The *Test files are excluded correctly, as is the toString() calls, the files under the entity/fields package are not. Does the <files>
ant type work with two excludes items? Can you have a partial package definition on your exclude name? I used **/.....
format as the doc says something cryptic like
An Ant patternset, relative to the top level package (e.g. com/cenqua/clovertest), element which controls which files are included or excluded from Clover instrumentation. Use this when you wish to exclude files based on packages.
From this I read it starts at clovertest in the sample, although i'm not sure how it knows what the top level package is
开发者_Python百科? Is that the first package with files?
As an example my java classes that i want to exclude are like
package com.acme.missileinabox.common.entity.fields;
public class ActivityFields {
....
}
Any idea what i'm foobaring? I posted the question here with no response.
You may need to specify a <fileset>
, possibly containing one or more <patternset>
's, as discussed under the <fileset>
topic in <clover-setup>
.
Addendum: If you change <files>
to <fileset>
, you can use the latter's implicit <patternset>
unchanged:
<fileset>
<exclude name="**/*Test.java" />
<exclude name="**/entity/fields/*.java" />
</fileset>
Alternatively, use <files>
and nest an explicit <patternset>
:
<files>
<patternset>
<exclude name="**/*Test.java" />
<exclude name="**/entity/fields/*.java" />
</patternset>
</files>
精彩评论