ant

1. ant手册翻译

ant手册翻译是一项大工程!!!!!!

ant在线手册的链接好不明确。

2. ant 支持for循环

安装ant-contrib Ref[1.1]. 要在ant的build.xml脚本中支持,参考链接Ref[1.2]。

下面的build.xml是遍历txt文件,将每一行进行输出的ant脚本。Ref[1.3]

 <?xml version="1.0" encoding="UTF-8"?>
<project name="android_rules" default="iterate"> <taskdef resource="net/sf/antcontrib/antlib.xml"/> <target name="iterate">
<loadfile property="lines" srcFile="CopyRes.txt">
<filterchain>
<filterreader classname="org.apache.tools.ant.filters.StripLineBreaks">
<param name="linebreaks" value="\n"/>
</filterreader>
</filterchain>
</loadfile> <for list="${lines}" param="line">
<sequential>
<echo>@{line}</echo>
</sequential>
</for> </target> </project>

Reference

1. ant-contrib

1.1 http://ant-contrib.sourceforge.net

1.2 http://ant-contrib.sourceforge.net/tasks/index.html

1.3 http://stackoverflow.com/questions/5087929/how-to-iterate-over-the-file-content-using-ant-script

2. ant 工程主页

http://ant.apache.org/

Running Apache Ant

Command Line

Running Ant as a background process on Unix(-like) systems

Running Ant via Java

Properties

Built-in Properties

PropertyHelpers

Property Expansion

$$ Expansion

Nesting of Braces

Expanding a "Property Name"

If/Unless Attributes

Filter

Typedef

Adds a task or a data type definition to the current project such that this new type or task can

be used in the current project.

FileSet

A FileSet is a group of files. These files can be found in a directory tree starting in a base directory

and are matched by patterns taken from a number of PatternSets and Selectors.

Task

http://ant.apache.org/manual/Tasks/

http://ant.apache.org/manual/Tasks/conditions.html

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

FilterSet

http://ant.apache.org/manual/Types/filterset.html

FilterSets are groups of filters. Filters can be defined as token-value pairs or be read in from a file.

FilterSets can appear inside tasks that support this feature or at the same level as <target> - i.e., as children of <project>.

FilterChains and FilterReaders

http://ant.apache.org/manual/Types/filterchain.html

   
   
   
   
   
   
   
   
   
   
   
   

Android.Tools.Ant的更多相关文章

  1. linux(以ubuntu为例)下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件

    原创,转载请注明:http://www.cnblogs.com/ycxyyzw/p/4555328.html  之前写过一篇<windows下Android利用ant自动编译.修改配置文件.批量 ...

  2. windows下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件

    原创文章,转载请注明:http://www.cnblogs.com/ycxyyzw/p/4535459.html android 程序打包成apk,如果在是命令行方式,一般都要经过如下步骤: 1.用a ...

  3. 〖Android〗ant build android project, setting android.jar precedence

    最近公司的一个项目中,新增了classes.jar包,与android.jar有冲突,必须得在加载android.jar前行加载classes.jar: 在持续集成环境中须使用ant编译,classe ...

  4. android的ant编译打包

    Android本身是支持ant打包项目的,并且SDK中自带一个build.xml文件. 通过该文件,可以对文件进行编译.打包.安装等.并且支持多种方式打包,如debug或者release. 一般的,可 ...

  5. 解决 Could not find com.android.tools.build:gradle 问题

    今天拉同事最新的代码,编译时老是报如下错误: Error:Could not find com.android.tools.build:gradle:2.2.0.Searched in the fol ...

  6. Could not find com.android.tools.build:gradle:1.3.0.

    * What went wrong:          A problem occurred configuring project ':TZYJ_Android'.> Could not re ...

  7. Android requires compiler compliance level 5.0 or 6.0. Found '1.8' instead. Please use Android Tools>Fix project Properties.

    重装操作系统之后,或者破坏了Android的开发环境之后,需要重新配置好Android的开发环境.但是配置好后,导入原有的项目时,报错: Android requires compiler compl ...

  8. Failed to apply plugin [id 'com.android.application'] 和 Could not find com.android.tools.build:gradle:2.XX的最正确的解决方法

    发现android studio是真的可爱啊,上一秒还没问题可以build运行,下一秒就出错...好,你任性,你牛逼.. 说下今天又遇到的两个问题:Failed to apply plugin [id ...

  9. linux ant 解决 错误: 找不到或无法加载主类 org.apache.tools.ant.launch.Launcher

    在使用ant进行java程序编译的时候出错.错误提示: Error: Could not find or load main class org.apache.tools.ant.launch.Lau ...

随机推荐

  1. Docker 批量启动

    批量配置IP for i in `docker ps -a|awk 'NR>1 {print $NF}'`;do IP=`echo $i|awk -F_ '{print "192.16 ...

  2. 新闻推荐系统:基于内容的推荐算法(Recommender System:Content-based Recommendation)

    https://blog.csdn.net/qq_32690999/article/details/77434381 因为开发了一个新闻推荐系统的模块,在推荐算法这一块涉及到了基于内容的推荐算法(Co ...

  3. Cascade Classifier Training 没有基础也会目标检测啦

    Cascade Classifier Training 具体自己看: http://docs.opencv.org/2.4.13.2/doc/user_guide/ug_traincascade.ht ...

  4. 用JS和JQ来获取子节点!

    用JS和JQ来获取子节点!   在JS中,如果通过document.getElementsByTagName来获取子元素有个弊端:它不单会获取符合要求的子元素,就连同孙元素也会获取.如果有特殊要求,那 ...

  5. php输出textarea数据(入库没有处理的)

    str_replace("\r\n","<br />",$xmactivity['xmdetail']) 导出excel换行方法 str_repla ...

  6. idea 热部署之JRebel安装-激活-简单使用(修改方法\配置文件均生效)

    1.简介 JRebel插件在IntelliJ IDEA中用于代码的热部署,即工程在已经启动的状态下修改代码,可以不用再重启服务,JRebel插件会自动帮我们编译代码,然后重启.整个重启的过程耗时非常短 ...

  7. Android Studio 2.3.3上引入3.0上开发的项目遇到的问题

    dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) debugImplementation project( ...

  8. CGLIB代理基础

    本文意在讲解CGLIB的基础使用及基本原理. 一.CGLIB的基本原理: 依赖ASM字节码工具,通过动态生成实现接口或继承类的类字节码,实现动态代理. 针对接口,生成实现接口的类,即implement ...

  9. 【C++】子类访问父类typedef的问题

    class A { public: typedef int* pointer; }; class B :public A { public: pointer b; }; 这段代码运行没有问题,子类继承 ...

  10. 七 shelve模块

    shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写;key必须为字符串,而值可以是python所支持的数据类型 import shelve f=shelve.o ...