Ant 学习

简介

Ant最早是Tomcat的一个附属项目,专门用于Tomcat的项目构建工作,后来越来越流行,虽然现在有Maven但是有些

东西还是使用Ant最合适了

 

 

 

层次关系

Proejct 

Target 执行目标

Task 目标中具体的任务  

 

属性Property

先入为主,类似于Java中的常量,这样你可以通过ant -DpropertyName=xxx 来定义新的属性值

 

 

ant-launcher.jar 运行的入口

ant.jar核心Jar

 

ant执行流程

org.apache.tools.ant.launch.Launcher.main

org.apache.tools.ant.launch.Launcher.run(String[]) 这里构建Ant的classpath,并反射构造org.apache.tools.ant.launch.AntMain

org.apache.tools.ant.launch.AntMain.startAnt(String[], Properties, ClassLoader) 接口 org.apache.tools.ant.Main实现

构建org.apache.tools.ant.Project 并执行目标....

 

 

 

org.apache.tools.ant.types.DataType 可以定义在目标外,多个目标共享使用

org.apache.tools.ant.types.Mapper 映射器 用来对文件操作进行过

org.apache.tools.ant.types.Mapper.MapperType

org.apache.tools.ant.util.FileNameMapper

 

org.apache.tools.ant.types.EnumeratedAttribute  xml定枚举的使用使用 ,扩展Task的时候有用

<?xml version="1.0" encoding="UTF-8"?>
<project name="project">
	<property name="aa" value="aaa" />
	<target name="t1">
		<!-- 不可以重新定义属性值 -->
		<property name="aa" value="bbbb" />
		<echo>${aa}</echo>

		<copy todir="copyfile">
			<fileset dir="src" includes="**/*.java" />
			<!---让拷贝文件平铺 这里还有很多特性-->
			<mapper type="flatten" />
		</copy>
	</target>
	
</project>

 

SmartFrog

是一个功能强大而且灵活的用于配置发布和管理分布式软件系统的 Java 平台。

你可能感兴趣的:(ant)