如何在 Ant 任务中加载文件列表作为资源?

Posted

技术标签:

【中文标题】如何在 Ant 任务中加载文件列表作为资源?【英文标题】:How to load a list of files as resources in an Ant task? 【发布时间】:2013-01-09 15:31:28 【问题描述】:

我已经查看了整个网络,以了解如何通过 Ant 任务加载包含空格且尚不存在的文件列表。

我有一个文件,每行包含一个文件路径,如下所示:

dir1/dir2/dir with spaces/file1.js
dir1/dir2/dir with spaces/dir3/file2.js
dir1/file1.js

由于路径中有空格,我无法使用:

<filelist files="..." />

这些文件也不存在,所以我好像不能使用

<fileset>
    <includesfile name="..." />
</fileset>

任何想法都将不胜感激。

【问题讨论】:

【参考方案1】:

您可以为此使用资源列表。例如,如果您的文件列表位于名为“files.txt”的文件中:

<resourcelist id="files">
    <file file="files.txt"/>
</resourcelist>

<touch mkdirs="true">
    <resources refid="files" />
</touch>

对我来说,这会产生:

[touch] Creating .../filelist/dir1/dir2/dir with spaces/file1.js
[touch] Creating .../filelist/dir1/dir2/dir with spaces/dir3/file2.js
[touch] Creating .../filelist/dir1/file1.js

这样做的原因是 &lt;resourcelist&gt; 将读取的文件中的每一行视为单独的资源,因此行分隔符而不是逗号或空格分隔项目。

【讨论】:

以上是关于如何在 Ant 任务中加载文件列表作为资源?的主要内容,如果未能解决你的问题,请参考以下文章

如何在复合组件中加载资源包属性文件?

如何在最新的 Ant 命令中使用文件列表作为文件集?

U3D游戏运行时资源是如何从AB中加载出来的

如何从打包在war文件中的jar文件中加载资源? [复制]

如何从资源中加载自定义字体? [C#]

NativeScript WebView 在 src 文档中加载本地资源