gpt4 book ai didi

javascript - ant进程中回显文件名

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:35:21 24 4
gpt4 key购买 nike

我目前在 ant 构建过程中使用 YUI 压缩器来压缩 CSS 和 JavaScript 文件。在缩小每个文件的同时,我希望它输出当前尝试将可执行文件应用到的文件的名称,以便在发生错误时,我知道哪个文件导致了错误。例如:

[echo] Minifying JS files...
[echo] Trying to minify file1.js...
[echo] Trying to minify file2.js....

在应用指令应用于所有文件后,我看到的每个解决方案似乎都只是回显文件集中的所有文件名。

我的 ant 构建目前看起来像这样:

<target name="minifyJS" depends="overwriteCSSWithMinified">
<echo message="minifying js files and saving them to fileName-min.js" />
<apply executable="java" parallel="false" dest="${toWebHome}">
<fileset dir="${toWebHome}">
<exclude name="**/*.min.js" />
<include name="**/*.js"/>
</fileset>
<arg line="-jar"/>
<arg path="yuicompressor-2.4.7.jar" />
<arg line="-v"/>
<srcfile/>
<arg line="-o"/>
<mapper type="glob" from="*.js" to="*-min.js"/>
<targetfile/>
</apply>
</target>

也许有另一种方法可以做到这一点,而不是使用文件集,而是使用一条指令一次循环遍历每个文件并对文件执行应用?

最佳答案

为此,您需要包含 ant-contrib .然后你可以这样做:

<target name="minifyJS" depends="overwriteCSSWithMinified">
<echo message="minifying js files and saving them to fileName-min.js" />
<foreach target="yui" param="jsFile">
<fileset dir="${toWebHome}">
<exclude name="**/*.min.js" />
<!-- should this be -min.js instead of .min.js ? -->
<include name="**/*.js"/>
</fileset>
</foreach>
</target>

<target name="yui">
<echo message="${jsFile}"/>
<exec executable="java">
<arg value="-jar"/>
<arg value="yuicompressor-2.4.7.jar"/>
<arg value="-v"/>
<arg value="-o"/>
<arg value="'.js$:-min.js'"/>
<arg value="${jsFile}" />
</exec>
</target>

关于javascript - ant进程中回显文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13377460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com