Ant - 从文件中读取全局变量?

发布于 2025-01-05 18:26:39 字数 622 浏览 0 评论 0原文

我的 ANT-buildfile 中有以下代码片段,它从文件中读取文件名并将它们合并为构建过程的一部分。它运行良好,但我需要指定每个文件。

有没有一种方法可以让我从文件中读取 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

I have this following snippet in my ANT-buildfile, which reads filenames from a file and merges them as a part of my build process. It works well, but I need to specify each and every file.

Is there a way that I can read glob patterns from a file instead?

<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>

Here's an extract from the file-list as it looks now:

libs/jquery-1.7.1.min.js
libs/jquery.flot.min.js
libs/underscore-min.js
libs/json2.js

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

極樂鬼 2025-01-12 18:26:39

我使用相同的方法,指定每个文件。但即使您找到了使用通配符加载文件的方法,它也可能会破坏您的应用程序。由于 javascript 文件的顺序很重要,因此无法按特定顺序自动加载所有文件。无论如何,可以为 ant 编写自定义任务(扩展)

I use same approach, specify each and every file. But even if you find a way to load files using wildcard, it could broke your application. Since order of javascript files matter, and there is no way to load all of them automatically in particular order. Anyway it's possible to write you custom task (extension) for ant

凤舞天涯 2025-01-12 18:26:39

将 concat 与嵌套文件集结合使用,例如:

<concat destfile="${files}" fixlastline="no">
 <fileset dir="your/dir/with/jsfiles" includes="**/*.js"/>
</concat>

您可以使用一个或多个嵌套文件集或与文件集混合使用 .. ,请参阅 ant 手册 了解详细信息。

Use concat with nested fileset, something like :

<concat destfile="${files}" fixlastline="no">
 <fileset dir="your/dir/with/jsfiles" includes="**/*.js"/>
</concat>

You may use one or more nested filesets or mix with fileset .. , see ant manual concat for details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文