来自蚂蚁的固定线的替代品

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了来自蚂蚁的固定线的替代品相关的知识,希望对你有一定的参考价值。

我正在重写从Ant到Phing的build.xml文件,一切都很好,有一个例外。我需要在每个附加文件的末尾添加新行,但我找不到fixlastline="true"的任何替代方法。

在蚂蚁它是

 <concat destfile="${libraryFilePrefix}.js" fixlastline="yes">
     <!-- many filesets -->
 </concat>

在Phing就像

 <append destfile="${libraryFilePrefix}.js">
     <!-- many filesets -->
 </append>

是否有任何属性像fixlastline或者我需要找到另一种方法来实现这一点?

答案

我相信,其中一种方法(可能是唯一的方法)是在每个文件集上应用replaceregexp过滤器。您只需要在开头应用过滤链,它将为每个fileset完成工作,如下所示:

<append destfile="${libraryFilePrefix}.js">
    <filterchain>
        <replaceregexp>
            <regexp pattern="([^
])$" replace="$1${line.separator}" ignoreCase="true"/>
        </replaceregexp>
    </filterchain>

    <!-- many filesets -->
</append>
另一答案

截至Phing 3.x,AppendTask知道fixlastline属性。您提供的Ant脚本现在正在按预期工作

    <project name="concat-supports-fixlastline" default="concat-fixed-lastline" basedir=".">
        <target name="concat-fixed-lastline">            
            <concat destfile="${libraryFilePrefix}.js" fixlastline="yes">
                <!-- many filesets -->
            </concat>
        </target>
    </project>

以上是关于来自蚂蚁的固定线的替代品的主要内容,如果未能解决你的问题,请参考以下文章

重工作的Asynctask替代方案(在UI中添加大量片段)

c_cpp 加载源图像固定用法(代码片段,不全)

将片段显示为对话框或常规活动

Qt编写自定义控件22-蚂蚁线

inline内联函数

BootStrap有用代码片段(持续总结)