【转】Ant学习笔记——自己构建Ant编译环境
自从年初开始用NetBeans6.0,才接触到Ant。 这是今年6月份的一篇Ant学习笔记。
安装 1.下载并构建环境。 去官网下载src包和bin包。解压缩它们到同一目录,运行build.bat,bootstrap.bat。 2.设置系统环境变量 新建ANT_HOME,值为解压缩的目录。如C:\ant\apache-ant-1.7.0 在PATH末尾追加%ANT_HOME%\bin; 3.测试安装环境 命令行下输入ant -version,成功看到Ant版本信息。
运行 1.建一个项目文件夹firsttest 2.把项目开发完成的文件和文件夹放到firsttest下 例:java文件的文件夹src,web文件的文件夹web 3.firsttest下新建文件build.xml,编辑如下:
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
--><?xml version="1.0" encoding="UTF-8"?> <project name="ant_firsttest" default="dist" basedir="."> <description>ant firsttest!</description> <!-- set global properties for this build --> <!--设定变量,之后用。location为文件夹路径--> <property name="src" location="src"/> <property name="build" location="build"/> <property name="dist" location="dist"/> <property name="web" location="web"/> <!--设置properties文件位置.这里没用到。--> <!--<property file="nbproject/project.properties"/>-->
<!--初始化命令--> <target name="init"> <!-- Create the time stamp --> <tstamp/> <!--mkdir是建立文件夹,${build}即刚才设定的变量。这几行都在干这事。--> <!-- Create the build directory structure used by compile --> <mkdir dir="${build}/WEB-INF/lib"/> <mkdir dir="${build}/WEB-INF/classes"/> <mkdir dir="${build}/WEB-INF/classes/javafile/package1"/> <mkdir dir="${build}/WEB-INF/classes/javafile/package2"/> </target>
<!--编译--> <target name="compile" depends="init" description="compile the source " > <!-- Compile the java code from ${src} into ${build} --> <!--javac标签用来设置编译程序的参数,srcdir为java文件路径,destdir为编译后class文件的保存路径。--> <javac srcdir="${src}/javafile/package1" destdir="${build}/WEB-INF/classes/javafile/package1"/> <javac srcdir="${src}/javafile/package2" destdir="${build}/WEB-INF/classes/javafile/package2"/> <!--如果路径下还有别的文件需要一起打包,用copy 命令。--> <copy file="${src}/hello_ant.xml" tofile="${build}/WEB-INF/classes/hello_ant.xml" /> </target> <!--编译后就要打包了。--> <target name="dist" depends="compile" description="generate the distribution" > <!-- Create the distribution directory --> <mkdir dir="${dist}"/> <!--像jsp,jar这些直接用不用编译的文件,直接用copy命令。--> <copy file="${web}/image/a.gif" tofile="${build}/image/a.gif" /> <copy file="${web}/WEB-INF/web.xml" tofile="${build}/WEB-INF/web.xml" /> <copy file="${web}/WEB-INF/lib/a.jar" tofile="${build}/WEB-INF/lib/a.jar" /> <copy file="${web}/index.jsp" tofile="${build}/index.jsp" /> <!--最后用jar命令打成jar/war文件,文件名和后缀随便起。basedir为欲打包的原文件路经--> <jar jarfile="${dist}/ant_firsttest.jar" basedir="${build}"/> </target> <!--删除--> <target name="clean" description="clean up" > <!--设定删除命令要删的路径。--> <!-- Delete the ${build} and ${dist} directory trees --> <delete dir="${build}"/> <delete dir="${dist}"/> </target> </project>
4.控制台在firsttest目录,输入ant后回车就打包完成了! 注:输入ant回车自动执行init,compile,dist命令。要想执行clean命令,输入ant clean即可。
转载地址:http://www.blogjava.net/atealxt/archive/2008/07/17/ant_study_note.html
【转】Ant学习笔记——自己构建Ant编译环境的更多相关文章
- Ant学习-001-ant 基础知识及windows环境配置
一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...
- Java web与web gis学习笔记(一)——Tomcat环境搭建
系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...
- Swift学习笔记(一)搭配环境以及代码运行成功
原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...
- Django学习笔记(一):环境安装与简单实例
Django学习笔记(一):环境安装与简单实例 通过本文章实现: Django在Windows中的环境安装 Django项目的建立并编写简单的网页,显示欢迎语与当前时间 一.环境安装 结合版本兼容性等 ...
- kvm虚拟化学习笔记(一)之kvm虚拟化环境安装
平时一直玩RHEL/CentOS/OEL系列的操作,玩虚拟化也是采这一类系统,kvm在RHEL6系列操作系统支持比较好,本文采用采用OEL6.3操作系统,网上所有文章都说KVM比xen简单,我怎么感觉 ...
- Orleans[NET Core 3.1] 学习笔记(一).NET环境下的分布式应用程序
前言 Orleans是一个跨平台的框架,用于搭建可扩展的分布式应用程序 第一次接触Orleans还是两年前做游戏服务器的时候,用SignalR+Orleans的组合,写起代码来不要太爽. 即将进入20 ...
- Ant学习笔记(1) 基础知识
Ant Apache Ant 是一个基于 Java的构建工具. 下载Ant google.baidu.Windows用户下载zip格式.解压即可. Windows安装Ant Ant本质上是一个Java ...
- Ant学习笔记
前言:这段时间在学习Ant,发现这是一个很强大的构建工具.你可能使用了很长一段时间,才发现Ant能做数不完的事.总之,个人觉得,Ant学习门槛低,入门简单,能大概看懂程序,写一些简单的脚本即可,剩下在 ...
- Ant学习笔记(2) 在Eclipse中使用Ant
Eclipse默认提供了对Ant的支持,在Eclipse中不需要安装任何插件就能直接编辑和运行Ant.Eclipse中包含了一个Ant脚本编辑器,Ant脚本编辑器提供了对Ant脚本的语法搞来高亮.自动 ...
随机推荐
- boost源码剖析----boost::any
boost源码剖析----boost::any 有的时候我们需要有一个万能类型来进行一些操作,这时候boost::any就派上用场了. boost::Any testInt(10); int val ...
- toStirng()与Object.prototype.toString.call()方法浅谈
一.toString()是一个怎样的方法?它是能将某一个值转化为字符串的方法.然而它是如何将一个值从一种类型转化为字符串类型的呢? 通过下面几个例子,我们便能获得答案: 1.将boolean类型的值转 ...
- ios项目总结一:开发中常用的设计模式
一.单例设计模式 1.应用场景: 程序运行期间,在内存中只有一个实例存在,主要用于资源共享,对硬件的访问等等 2.优点: 跨模块,解耦合,使用简单 3.敏捷原则: 单一职责原则 4.SDK实例: UI ...
- Prince2是怎么考试的?
Prince2是怎么考试的? 在前几年,对于项目经理来讲关注的很多是单项目管理的工具技术模板,谈论最多的是,进度延期,成本超支,范围蔓延等等!有一个不成文的形态就是--去考个PMP吧!一时间PMP成为 ...
- 关于在官网上查看和下载特定版本的webrtc代码
注:这个方法已经不适用了,帖子没删只是留个纪念而已 gclient:如果不知道gclient是什么东西 ... 就别再往下看了. 下载特定版本的代码: #gclient sync --revision ...
- Viking Village维京村落demo中的粒子距离消隐
Custom/DistanceFade shader 粒子雾似乎可以使用.尝试给面片套用该效果,但由于有顶点变形,效果不太好,要做些改动
- Android-Universal-Image-Loader的缓存处理机制
讲到缓存,平时流水线上的码农一定觉得这是一个高大上的东西.看过网上各种讲缓存原理的文章,总感觉那些文章讲的就是玩具,能用吗?这次我将带你一起看过UIL这个国内外大牛都追捧的图片缓存类库的缓存处理机制. ...
- EasyUI datebox 只读和取值
<input id="dd" type="text" class="easyui-datebox" required="re ...
- Linux的加密认证功能以及openssl详解
一.详细介绍加密.解密技术 现在的加密/解密技术主要有三种:对称加密,非对称加密,和单向加密 这三种加密解密技术的组合就是现在电子商务的基础,它们三个有各自最适合的领域,而且所要完成的功能也是不同的, ...
- Oracle子查询(嵌套查询)
概念: 所谓子查询,即一个select语句中嵌套了另外的一个或者多个select语句 需求:查找和Smith同部门的所有员工的id和last_name 目标: 员工id,last_name from: ...