想出了一個辦法做到this..Included ant腳本中的常規任務來完成這件事..說我有一個input.xml
這樣的:
<include>
<targetclass name="com.samples.ClassToBeIncluded1" />
<targetclass name="com.samples.ClassToBeIncluded2" />
<targetclass name="com.samples.ClassToBeIncluded3" />
<targetclass name="com.samples.ClassToBeIncluded4" />
</include>
,提供有關的類是細節使用簡單的常規解析器included..I解析文件和配置,指定要包括在組類的螞蟻一個新的屬性..
新的屬性是:
<property name="instrumentedclasses" value=""/>
Groovy腳本讀取外部輸入和設置屬性是:
<groovy>
def xmlParser = new XmlParser()
def includeStr = ""
def eachFile = new File('input.xml')
def includeRootNode = xmlParser.parse(eachFile)
includeRootNode.targetclass.each{ targetClassNode ->
def className = targetClassNode.attribute("name")
className = className.replace(".","/")
includeStr = includeStr +className+".class "
}
properties["instrumentedclasses"] = includeStr
</groovy>
現在新設置的屬性由以下螞蟻腳本以包括必要的類:
<fileset dir="${classes.dir}" includes="${instrumentedclasses}" />