Phing:获取没有扩展名的文件名

时间:2012-11-21 17:13:13

标签: phing

给出像这样的Phing循环

<target name="lessc">
  <exec command="lessc ${absolute-filename}" logoutput="false" output="${project.basedir}/public/assets/css/libraries/${filename}" />
</target>

<target name="build-in-loop">
  <foreach param="filename" absparam="absolute-filename" target="lessc">
    <fileset dir="${project.basedir}/assets/less/libraries/">
      <include name="*.less"/>
    </fileset>
  </foreach>
</target>

在目标lessc中,如何从变量absolute-filename中提取没有扩展名的文件名?在上面的示例中,output文件的扩展名为.less - 显然不是我需要的。

我知道有一个更少的任务,我可以扩展Phing来支持这个特定的操作,但我想首先知道Phing是否基本上允许对变量进行简单的字符串操作。

1 个答案:

答案 0 :(得分:0)

找到答案,不确定这是否是最佳解决方案,但对我有用:

只需要使用mapper标签

    <mapper type="glob" from="*.less" to="*"/>

foreach循环中,如下所示:

<target name="build-in-loop">
  <foreach param="filename" absparam="absolute-filename" target="lessc">
    <fileset dir="${project.basedir}/assets/less/libraries/">
      <include name="*.less"/>
    </fileset>
  </foreach>
</target>

此时,在${filename}任务中的变量target中,将存在没有扩展名的文件名。

相关问题