可能重复:
如何使用Ant在文件中搜索字符串(确保在源文件中找不到特定字符串)
我正在与一个小团队(大约5名开发人员)合作一个项目,我们希望确保源代码中不会出现单词列表。这段代码是一个extGWT项目,我们使用ANT构建脚本来构建和部署我们的项目。我们有一个文本文件,其中列出了一些不好的单词。构建将在linux机器上进行,因此我可以访问find和grep等。如果发现一个坏单词,我可以让构建失败,然后我们可以搜索源代码来找到坏单词的位置。任何关于实现这一点的暗示都将是一个巨大的帮助。
感谢我收到的所有评论,我能够解决我的问题,我想我会把我的完整解决方案放在这里供将来参考。
<target name="badword-search" description="search for bad words">
<echo>Doing badword-serach</echo>
<property name="src.dir" value="src" />
<property name="search.string" value="b(word1|word2|word3)b" />
<fileset id="existing" dir="${src.dir}">
<patternset id="files">
<!-- includes/excludes for your source here -->
</patternset>
</fileset>
<fileset id="matches" dir="${src.dir}">
<patternset refid="files" />
<containsregexp expression="${search.string}" casesensitive="false" />
</fileset>
<fail message="Found badword in one or more files in '${src.dir}'">
<condition>
<resourcecount when="greater" count="0" refid="matches" />
</condition>
</fail>
</target>