Ant 常用任务

 

 

 

1  property 任务:

   用法:    

<property  file="./xxx/comversion.properties" />

可以在构建文件中引入属性文件中的value属性,使用${key} 来引用。

 

 

 

2  ant 任务:

  用法:

<ant antfile="./xxx/buildcomponent.xml" >    

 调用buildcomponent.xml 文件同的默认目标。

     <property name="path" value="pathvalue" />      传递属性给目标

     <property name="version" value="versionvalue" />

</ant>

 

3 delete 任务:删除文件和路径

   用法:

<delete dir="../pl" />   删除pl路径

 

4 foreach 任务:循环功能,包含在ant的扩展包中

   声明:

<taskdef name="foreach" classname="net.sf.antcontrib.logic.ForEach" />  

  在build文件中引入foreach task。

 【注】:因为foreach 任务(task) 不是ant 核心包提供的,所以应该下载foreach的类包,添加到ant 类路径,并在build 文件中声明该任务。上面的taskdef 任务就完成了foreach

的声明。

   用法:

 <foreach target="source" param="fe.source.path"

                              list="${plugin.path}" delimiter=";">

     循环调用source目标,循环的变量为source.path,功能为:把list的值用delimiter分割,并把值循环赋值给param。

 

5 if 任务:程序分支的作用

    声明:

<taskdef name="if" classname="net.sf.antcontrib.logic.IfTask" />  

在build文件中引入if task。

    用法:

         <if>

               <and>                 判断条件1

                      <equals arg1="${src.exit}" arg2="true" />

                      <equals arg1="${MANIFEST.exit}" arg2="true" />

               </and>

 

               <then>                满足判断条件1执行

                      <antcall target="jartarget">

                             <param name="pluginroot" value="${pluginpath}" />

                      </antcall>

               </then>

 

               <elseif>               不满足判断条件1

 

                       <not>          判断条件2

                             <equals arg1="${MANIFEST.exit}" arg2="true" />

                       </not>

 

                       <then>        满足判断条件2

                             <echo message="No MANIFEST.MF file" />

                       </then>

               </elseif>

               <else>                 其他情况

                        <echo message="No Src directory" />

               </else>

         </if>

 

 

propertyregex  任务

   声明:

 <taskdef  name="propertyregex"

                   classname="net.sf.antcontrib.property.RegexTask" />

   用法:

 <propertyregex property="fe.name" input="${pluginsourcepath}"

                                  regexp="/.*" replace="" />

      完成属性的替换,即:把pluginsourcepath中的以"." 开始的部分,替换成" "。如

 

manifest 任务

   用法:

<manifest file="${pluginroot.temp}/META-INF/MANIFEST.MF" mode="update">

            <attribute name="Bundle-SymbolicName"

                   value="${pluginid}.source" />

            <attribute name="Eclipse-SourceBundle"

                   value='${pluginid};version="${allversion}";roots:="."' />

            <attribute name="Bundle-Version" value="${allversion}" />

            <attribute name="Bundle-Name" value="non" />

            <attribute name="Bundle-ManifestVersion" value="2" />

       </manifest>

 

 

jar 任务

   用法: 

<jar  destfile="${release.plugin.path}/${pluginid}.source_${allversion}.jar"

              manifest="${pluginroot.temp}/META-INF/MANIFEST.MF">

            <fileset dir="${pluginroot}/src" />

            <!-- <fileset dir="${pluginroot}/schema" /> -->

            <fileset dir="${pluginroot}" includes="schema/**" />

</jar>

 

available 任务

    用法:

    <available file="${pluginpath}/src/" type="dir" property="src.exit" />

    当${pluginpath}/src/ 路径存在时,src.exit 将被赋值为真。

10 replace 任务

    用法:

    <replace file="${release.feature.path}/feature.xml" token='"1.0.0.qualifier"'

                       value='"1.0.0.${plugindateversion}"' />

把文件feature.xml 中包含1.0.0.qualifier 字符串替换为1.0.0.${plugindateversion}。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值