ant里面mapper的详细用法

 

ant里面mapper标签是和fileset配合使用的,目的就是把fileset取出的文件名转成指定的样式。其实看懂官方文档后,感觉真心没啥好写的。但是还是写一下把。

1.<mapper type="identity"/>

就是啥都不干。fileset是啥样子,返回就是啥样子。

2.<mapper type="flatten"/>

大概意思是只返回文件名,而去掉路径,比如

D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.txt 这样输出就是 adb_has_moved.txt

3.<mapper type="glob" from="*.java" to="~*.java.bak"/>

大概的意思就是加前缀和后缀

D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.java 这样输出就是 ~D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.java.bak

4.<chainedmapper>

这个标签非常贱,看名字就知道,意思是把多个不同的mapper标签联合起来执行,以达到更全的处理方案。

        <mapper>
<chainedmapper>
<flattenmapper/>
<globmapper from="a*.java" to="*.java.bak" casesensitive="no"/>
</chainedmapper>
</mapper>

假设输入为D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.java,这个时候输出为adb_has_moved.java.bak

注意若是这个里面不写chainedmapper的话,返回的结果包含mapper里面所有的mapper返回结果的和。

因为这个里面把flatten和glob两个标签联合起来用了。

5. <mapper type="regexp" from="^(.*)\.java$$" to="\1.java.bak"/>

这个就是正则表达式了。正则表达式仅仅会抓去出相匹配的字符串,而没有替换功能,注意。

6.<mapper type="package" from="*Test.java" to="*"/>

D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.java  > D.and.adt-bundle-windows-x86.sdk.tools.adb_has_moved

7<cutdirsmapper dirs="5"/>

这个的作用就是把文件目录去掉一部分

D:\and\adt-bundle-windows-x86\sdk\tools\adb_has_moved.java  > \adb_has_moved.java

原文转自:http://www.cnblogs.com/100fighting/p/3171131.html

JAVA_build_ant_mapper的更多相关文章

随机推荐

  1. How to make vcredist_x86 reinstall only if not yet installed

    Since you don't want to tell what minimal version of Visual C++ redistributable package you require, ...

  2. 说说自己对RESTful API的理解s

    REST不是英文上的rest单词,其英文缩写为presentational State Transfer ,直译为表现状态转移,咋看起来很学术,不懂,其实不用去死抠这个词的意思.REST是一种约束和架 ...

  3. java并发6-小结

    为什么需要并发   并发其实是一种解耦合的策略,它帮助我们把做什么(目标)和什么时候做(时机)分开.这样做可以明显改进应用程序的吞吐量(获得更多的CPU调度时间)和结构(程序有多个部分在协同工作).做 ...

  4. [转载]STL map中的一些基本函数

    来源:(http://blog.sina.com.cn/s/blog_61533c9b0100fa7w.html) - C++ map的基本操作和使用_Live_新浪博客 Map是c++的一个标准容器 ...

  5. hadoop2.2.0伪分布模式64位安装

    hadoop2.2.0伪分布模式64位安装用到的软件:jdk-6u45-linux-x64.bin,hadoop-2.2.0.x86_64.tar.gz 修改主机名vim /etc/sysconfig ...

  6. JBossESB教程(二)——将JBossESB部署到JBossAS中

    前言 上篇讲了JBossESB的环境搭建,但是细心的同学会发现,我们在添加JBoss AS的时候,实际上添加的是jbossesb-server,而这个里面是没有EJB的支持的.如果我们想要使开发环境能 ...

  7. ubuntu dash

    缘由:写一些脚本放在/etc/rc.loca自动执行开机启动报错 fiail to start /etc/rc.local 查找资料 缘起:ubuntu在6.0后默认bash改为了dash  导致很多 ...

  8. (转)iOS消息推送机制中pem文件的生成

    转自:http://2015.iteye.com/blog/1567777 以前写了一篇文章:iOS消息推送机制的实现,这篇文章中生成的是p12文件,但是php是用的pem文件,生成的方法和p12文件 ...

  9. CSS3: box-sizing 属性的简单认识

    定义和用法: box-sizing 属性允许您以特定的方式定义匹配某个区域的特定元素. 默认值:content-box; 继承性:无: css版本:css3 语法:box-sizing: conten ...

  10. 【爬虫问题】爬取tv.sohu.com的页面, 提取视频相关信息

    尝试解决下面的问题 问题: 爬取tv.sohu.com的页面, 提取视频相关信息,不可用爬虫框架完成 何为视频i关信息?属性有哪些? 需求: 做到最大可能的页面覆盖率 *使用httpClient 模拟 ...