我可以在ant文件集中仅包含带注释的类来使用吗?

时间:2015-07-30 16:00:00

标签: java ant

我想在构建文件中执行2个ant任务。这两项任务都是用于测试的。两者之间唯一的区别在于必须运行的测试类。我在想是否可以注释一组这些测试,而ant可以包含/排除取决于注释,维护对我来说会容易得多。所有测试都在同一目录中,我没有权限将2组重构为2个独立的目录。

例如:

@alphaSet
A类

@alphaSet
B级

@betaSet
C级

@betaSet
D类

是否有办法在构建脚本的测试任务中的文件集中仅包含@alphaSet类(或仅@betaSet类)?

提前致谢。

1 个答案:

答案 0 :(得分:1)

将文件集与selector(s)一起使用,f.e。 :

<fileset dir="some/dir" includes="**/*.java" id="alphaSet">
 <contains text="@alphaSet" casesensitive="yes"/>
</fileset>

<fileset dir="some/dir" includes="**/*.java" id="betaSet">
 <contains text="@betaSet" casesensitive="yes"/>
</fileset>

<!-- control includes via echo -->
<echo>${toString:alphaSet}</echo>
<echo>${toString:betaSet}</echo>

如果需要更多标准,请使用selectorcontainers和/或/不..,f.e。 :

<fileset dir="some/dir" includes="**/*.java" id="alphaSet">
 <and>
  <contains text="@alphaSet" casesensitive="yes"/>
  <not>
    <!-- some other selectors ... -->
  </not>
  <and>
</fileset>