這似乎是應該是顯而易見的事情,但我不認爲它是。鑑於:如何使用模式集來過濾文件列表?
- 文件的空格分隔(或逗號分隔等)
- 白名單模式
如何想出一個包含所有的<fileset>
的<patternset>
列表中與白名單模式相匹配的文件?
獲取從列表中的文件列表是很容易的:
<patternset id="the-patternset" includes="${list.of.files}" /> <fileset id="the-fileset" dir="${basedir}"> <patternset refid="the-patternset" /> </fileset> <pathconvert pathsep="${line.separator}" property="the-filelist" refid="the-fileset"/> <echo>fileset: ${the-filelist}</echo>
...會很樂意與生產的所有文件的文件集中${list.of.files}
。但添加了各種各樣的過濾器:
<patternset id="the-filter"> <include name="includeme/**/*.java" /> <exclude name="excludeme/**/*.java" /> </patternset> <patternset id="the-patternset" includes="${list.of.files}" /> <fileset id="the-fileset" dir="${basedir}"> <patternset refid="the-patternset" /> <patternset refid="the-filter" /> </fileset> <pathconvert pathsep="${line.separator}" property="the-filelist" refid="the-fileset"/> <echo>fileset: ${the-filelist}</echo>
...將列出的patternsets,即工會,無論是匹配the-filter
或the-patternset
的所有文件。
如何生成一個文件集,其中包含文件${list.of.files}
和匹配the-patternset
?
您是否得到了這款君黛的工作解決方案? –