我的ANT构建文件中有以下片段,它从文件中读取文件名,并将它们合并为构建过程的一部分。它工作得很好,但我需要指定每个文件。
有没有一种方法可以让我从文件中读取glob
模式?
<loadfile property="files" srcFile="${dir.base}fileList">
<filterchain>
<suffixlines suffix=", " />
<striplinebreaks />
</filterchain>
</loadfile>
<concat destfile="${files}" fixlastline="no">
<filelist dir="${dir.files}" files="${files}" />
</concat>
以下是文件列表的摘录,如下所示:
libs/jquery-1.7.1.min.js
libs/jquery.flot.min.js
libs/underscore-min.js
libs/json2.js
我使用相同的方法,指定每个文件。但是,即使您找到了使用通配符加载文件的方法,它也可能破坏您的应用程序。由于javascript文件的顺序很重要,而且无法按特定顺序自动加载所有文件。无论如何,可以为ant 编写自定义任务(扩展)
使用带有嵌套文件集的concat,类似于:
<concat destfile="${files}" fixlastline="no">
<fileset dir="your/dir/with/jsfiles" includes="**/*.js"/>
</concat>
您可以使用一个或多个嵌套文件集,也可以与文件集混合使用,有关详细信息,请参阅ant手册concat。