`

ANT 打包命令

 
阅读更多

以下代码是基于一个项目的打包,生成DOC API文档,发布等一些过程..为开发人员提供方便..

 

代码如下:

<?xml version="1.0" encoding="GB2312"?>
<!--默认执行dist任务,basedir="."代表当期目录-->
<project default="dist" basedir=".">
	<!--定义系统的环境属性-->
	<property environment = "env" /><!--获取widow,unix的环境变量-->
	<property name="java.home" value="${env.JAVA_HOME}"/><!--获取环境变量中的Java_home的变量值.-->
	<property name="ant.home"  value="${env.ANT_HOME}"/> <!--获取环境变量中的Ant_home变量值-->
	
	<!--定义主要的app应用程序的环境属性-->
	<property name="app.name" value="HelloWorld"/>
	<property name="app.jar" value= "${app.name}.jar"/>
	<property name="app.copyright" value="Copyright(c)2011 sz All right reserved."
		
	<!--app应用程序src的属性-->	
	<property name="src.dir" value="src"/>
	<property name="src.main" value="${src.dir}/main"/>
	<property name="src.script" value="${src.dir}/script"/>
	
	<!--app用到的lib-->
	<property name="lib.dir" value="lib"/>
	
	<!--app的build目录中-->
	<property name="build.dir" value="build"/>
	<property name="build.classes" value="${build.dir}/classes"/>
	<property name="build.docs" value="${build.dir}/docs"/>
	<property name="build.docs.api" value="${build.docs}/api"/>
	<property name="build.lib" value="${build.dir}/lib" />
	
	<!--app的dist(distribution)发布的属性.目录中-->
	<property name="dist.dir" value="dist"/>
	<property name="dist.bin" value="${dist.dir}/bin"/>
	<property name="dist.docs" value="${dist.dir}/docs"/>
	<property name="dist.lib" value="${dist.dir}/lib"/>
	
	<!--app的docs目录中-->
	<property name="docs.dir" value="docs"/>
	<!--配置classpath路径-->
	<path id="classpath">
		<!--要编译的路径-->
		<pathelement location="${build.classes}"/>
		<!--引用java home的环境变量-->
		<pathelement path="${java.home}/lib/tools.jar"/>
	<path>
	
	<!--定义第一个,初始化目标-->
	<target name="init">
			<!--清除以前目录,failonerror,但删除时,目录不存在,是否报错误,
			为false不报错误信息。程序继续执行,如果设置为true,则会终止程序的运行-->
			<delete dir="${build.dir}" failonerror="false"/>
			<delete dir="${dist.dir}" failonerror="false"/>
			
			<!--准备目录,重新创建目录-->
			<mkdir dir="${build.dir}" />
			<mkdir dir="${build.classes}"/>
			<mkdir dir="${build.docs}"/>
			<mkdir dir="${build.docs.api}"/>
			<mkdir dir="${build.lib}"/>
			<mkdir dir="${dist.dir}"/>
			<mkdir dir="${dist.bin}"/>
			<mkdir dir="${dist.lib}"/>
	</target>
	
	<!--inti初始化完成之后,就是build构建的编译工作,它依赖于inti初始化任务-->
	<!--编译工作-->
	<target name="build" depends="init">
		  <!--srcdir只的是.java源文件目录,destdir指的是,编译后的class文件,存放的路径,-->
			<javac srcdir="${src.main}" destdir="${build.classes}">
				<!--引用classpath 路径,找到java home/lib/tools.jar工具,进行编译.-->
				<classpath refid="classpath"/>
			<javac>
	</target>		
	
	<!--打包任务,依赖于build任务-->	
	<target name="jars" depends="build">
			 <!--basedir指的是,把build/classes目录下的.class文件进行打包,-->
			 <!--jarfile指的是,jar包文件的类型,比如jar包,war(web 项目的war包。)${app.jar}指的是,引用程序名称HelloWorld.jar-->
			 <jar basedir="${build.classes}" jarfile="${build.lib}/${app.jar}"/>
	</target>
	
	<!--生成doc文件任务,依赖于打包之后的任务-->
	<target name="javadocs" depends="jars" description=" Create The API documentation">
		<!--copy docs手册,todir指的是,把文件拷贝到哪个目录下,-->
		<copy todir="${build.docs}">
			<!--生成的文件,存放在dir文件集目录下-->
			<fileset dir="${docs.dir}"/>
		</copy>
		
		<!--packagenames,指包的名称-->
		<javadoc packagenames="hello.ant.*" 
			sourcepath="${src.main}"
			defaulttextcudes="yes"
			destdir="${build.docs.api}"
			ahthor="true"
			version="true"
			use="true"
			windowtitle="Docs API">
			<doctitle>
					<![CDATA[<h1>Hello World Ant Docs API</h1>]]</doctitle>
					<!--API文档,底部显示版权信息,-->
					<buttom><![CDATA[<i>${app.copyright}</i>]]></buttom>
					<tag name="todo" scope="all" description="To do:"/>
		</javadoc>		
	</target>
	
  <!--发布任务,依赖于javadocs-->
  <target name="dist" depends="javadocs">
  	 <!--复制bin执行文件-->
  	 <copy todir="${dist.bin}">
  	 		<fileset dir="${src.script}"/>
  	 </copy>
  	 
  	 <copy todir="${dist.docs}">
  	 		<fileset dir="${build.docs}"/>
  	 </copy>
  	 
  	 <copy todir="${dist.lib}">
  	 		<fileset dir="${build.lib}"/>
  	 </copy>	
  </target>	
</project>	

 

分享到:
评论

相关推荐

    ANT打包命令详解api指令

    在本文中,我们将深入解析ANT打包命令中的`api`指令,以及一些常见的ANT使用示例。 首先,`api`指令在ANT中并不常见,可能是指使用ANT来处理或调用特定API的过程。然而,通常在`build.xml`文件中,我们看到的是如`...

    mac下ant打包android

    最后,运行`ant release -Dchannel=your_channel_name`命令,Ant会根据指定的渠道名执行打包操作,生成对应的APK文件。 总之,Mac下使用Ant对Android App进行多渠道打包是一种常见的做法,它允许开发者灵活地定制...

    java项目ant打包脚本

    Java项目中的Ant打包脚本是开发过程中的一个重要环节,它使得开发者能够自动化构建、测试和部署应用程序。Ant是一个基于XML的构建工具,由Apache软件基金会开发,它在Java社区广泛使用,替代了早期的Makefile,因为...

    ant 打包 java project 为ant

    标题中的“ant打包java project为jar”指的是使用Apache Ant工具将Java项目打包成JAR(Java Archive)文件的过程。Ant是Java开发中的一个构建工具,它以XML格式定义任务,可以自动化编译、测试、打包等流程。在这个...

    ant打包Web工程

    本文将深入探讨“ant打包Web工程”这一主题,基于提供的标签“源码”和“工具”,我们将围绕Apache Ant这个强大的Java构建工具进行讲解。 Apache Ant是一个开源的Java构建工具,它以XML格式定义了构建过程,使得...

    使用ant打包android

    总结,使用Ant打包Android应用涉及到了Java和Android开发的基础知识,包括环境配置、构建脚本、编译过程、资源处理、APK打包和签名。虽然现代的Android项目多采用Gradle,但了解Ant可以帮助开发者更好地理解和控制...

    ant打包工具

    **Ant打包工具详解** Ant是Apache软件基金会Jakarta项目下的一个构建工具,它以其灵活性和可扩展性在Java开发领域中被广泛应用。Ant基于XML,它的主要任务是编译源代码、创建JAR文件、执行测试、部署应用程序等。...

    ant打包ant的build.xml的详解

    Ant 打包 ant 的 build.xml 详解 Ant 是一个流行的自动化构建工具,广泛应用于软件开发和项目自动化构建中。本文将详细介绍 Ant 的环境变量配置和 build.xml 文件的配置详解。 第一步:安装 Apache Ant 在开始...

    ant打包编译全套资料

    在Ant打包编译过程中,常常会涉及到以下知识点: 1. **构建文件结构**:理解Ant构建文件的基本结构,包括项目信息、属性、目标和任务的组织方式。 2. **属性与变量**:如何定义、引用和传递属性,利用`${}`进行变量...

    ant打包部署工具,官方下载

    3. **打包JAR/WAR**:Ant能够将编译后的类文件和其他资源打包成JAR或WAR文件,这对于创建可分发的Java应用或Web应用至关重要。 4. **运行测试**:Ant支持JUnit和其他测试框架,可以自动化执行单元测试和集成测试,...

    ant学习笔记之(ant执行命令的详细参数和Ant自带的系统属性)

    《Ant学习笔记:详解Ant执行命令参数与系统属性》 Ant,作为一个基于Java的构建工具,因其跨平台性以及XML格式的构建脚本而被广泛应用于自动化构建过程,如编译、打包、测试等。本篇文章将深入探讨Ant执行命令的...

    SpringMVC 多版本接口/IP访问控制/ANT打包发布到LINUX

    1. 使用SCP或SFTP将ANT打包生成的文件传输到Linux服务器的指定目录。 2. 使用SSH登录服务器,切换到部署目录。 3. 运行解压命令(如tar -zxvf 或 unzip)解压文件。 4. 如果是Tomcat等应用服务器,需要将解压后的...

    SSH2集成+ant打包

    本实例主要探讨如何将SSH2与Ant结合,实现自动化部署和打包流程。SSH2的集成使得我们可以通过安全的方式在本地与远程服务器之间传输文件,例如部署应用程序或更新资源。Ant则负责编译源代码、生成JAR或WAR文件,以及...

    ant批量打包工具

    4. **执行打包任务**:运行`ant release`或`ant debug`命令(根据是否需要调试信息)启动打包过程。Ant会自动完成所有配置的任务,并生成对应的APK或应用包。 5. **验证与部署**:打包完成后,验证APK的功能和完整...

    打包工具 Ant 学习指南

    通过定义目标间的依赖,Ant可以确保构建顺序正确,先编译再测试,最后打包。例如: ```xml **/*Test.java"/&gt; ``` 这段XML定义了一个名为`test`的目标,它依赖于`compile`,意味着在执行测试...

    纯ant命令打包含工具

    本篇将详细阐述Ant命令在Android打包签名过程中的应用,以及如何利用Ant进行相关的操作。 首先,我们要理解Ant在Android应用开发中的作用。在Android开发中,开发者通常需要将源代码编译成APK文件,这个过程包括...

    Ant打包编译部署工具学习笔记2(附件中含有测试项目)

    在"Ant打包编译部署工具学习笔记2"中,我们可以预期博主分享了关于如何利用Ant进行更复杂的构建操作,例如集成测试、优化和打包。这可能包括如何配置build.xml文件,添加自定义任务,以及如何处理依赖关系。由于没有...

    Ant批量打包Android应用

    总之,Ant批量打包Android应用是通过编写自定义的build.xml脚本,结合SDK工具和Ant命令,实现自动化编译和打包的过程。这可以极大地提高开发效率,特别是在需要对多版本或多渠道的应用进行打包时。

Global site tag (gtag.js) - Google Analytics