-->

使用Ant-的contrib,如何使用“的endsWith”?(Use ant-contrib,ho

2019-07-04 09:53发布

蚂蚁的contrib最新版本是ant-contrib-1.0b3.jar

http://ant-contrib.sourceforge.net/tasks/tasks/more_conditions.html

这份文件显示endsWith条件

但是我用蚂蚁1.8.2和ant-contrib-1.0b3.jar ,我上无法找到endsWith条件

    <if>

        <endswith string="D:\FeiLong Soft\Essential\Development\repository\org\springframework\spring-beans" with="spring-beans" />
        <then>
            <echo>equals</echo>
        </then>
        <else>
            <echo>not equals</echo>
        </else>
    </if>

但是结果是:

BUILD FAILED
E:\Workspaces\feilong\feilong-platform\tools\feilong-tools-ant\build.xml:32: if
doesn't support the nested "endswith" element.

Total time: 1 second

Answer 1:

当检查从antcontrib(版本1.0b2或1.0b3)特别是源net/sf/antcontrib/antcontrib.properties../antlib.xml你会看到,有没有startsWithendsWith条件,虽然它在真实提到antcontrib手册 。

这两个条件与源自羚羊项目 ,它提供了运行ant和几个Ant任务的UI。 几年前,有计划有AntContrib合并羚羊,看到羚羊任务与AntContrib合并和羚羊项目选址:

羚羊项目还提供了一组提供与蚂蚁分布的标准任务未发现功能的附加任务。 工作正在进行与AntContrib项目合并羚羊任务。
[...]
蚂蚁的Contrib项目是任务的集合(在一个点或许类型和其他工具)对Apache Ant的。 一些羚羊任务现在该项目的一部分。

但不知何故,这些合并计划停滞不前,没有完成正确,也Antcontrib似乎是死了- 从2006-11-02最新版本1.0b3

无论如何,你既可以用蚂蚁的比赛条件与antcontrib:

<project>
 <!-- Import AntContrib -->
 <taskdef resource="net/sf/antcontrib/antlib.xml"/>
 <property name="foo" value="D:\FeiLong Soft\Essential\Development\repository\org\springframework\spring-beans"/>

 <if>
 <matches string="${foo}" pattern="^.+spring-beans$"/>
  <then>
   <echo>equals</echo>
  </then>
  <else>
   <echo>not equals</echo>
  </else>
 </if>
</project>

或羚羊Ant任务 。



Answer 2:

我使用“startwith”有同样的问题,不要找到了解决办法。 我不明白的“载”的工作,但“startwith”和“ENDWITH”的原因不知道。

<if>
    <contains string="a sample string" substring="sample" />
    <then>
        <echo>match</echo>
    </then>
    <else>
        <echo>not match</echo>
    </else>
</if>


文章来源: Use ant-contrib,how to use “endsWith”?