ant使用初步
2013-04-28 16:35
465 查看
下载:
1),apache网站,http://ant.apache.org/;
2),最新的ant下载地址,http://ant.apache.org/bindownload.cgi
3),点击超链下载,apache-ant-1.9.0-bin.zip
解压缩;
设置环境变量;
ANT_HOME D:\javaSoft\apache-ant-1.9.0(这是ant解压目录)
Path ;D:\javaSoft\apache-ant-1.9.0\bin(注意和前面分隔的分号;加在最后)
Cmd中输入ant 显示Buildfile:build.xml does not exist! Build failed
输入ant -version 显示ant版本;
···
安装成功。
总:
Ant用于生成jar文件(自动打包和部署);
另:
Eclipse中使用ant自动部署实现我的项目后,保存ant为过去式;转入maven;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
一个简单的使用ANT的例子
在 D 盘根目录下新建一个 build.xml 文件,文件的内容如下:
<?xml version="1.0" encoding="GBK"?>
<project name="测试脚本" default="copyfile" basedir="." >
<target name="copyfile">
<copy file="d:/a.txt" todir="e:/Temp" overwrite="true" />
</target>
</project>
在 D 盘根目录下新建一个 a.txt 文件,内容随便。
进入DOS,依次执行:
d:
ant
如同下面的截图:
执行完毕后,我们会在 e:/Temp 目录下看到 a.txt 文件,跟D盘根目录下的完全一样,即Copy成功。
参考文章:
ANT 的安装和配置,
http://www.cnblogs.com/ghj1976/archive/2010/04/14/1711914.html
···
ANT初学入门之一:基本概念、安装与配置,
http://www.cnitblog.com/intrl/archive/2009/04/12/56288.html
【ANT专辑 一】ANT在Web项目中的应用--工具介绍,
http://www.cnitblog.com/intrl/archive/2009/07/25/60358.html
···
ANT十五大最佳实践详解,
http://www.cnitblog.com/intrl/archive/2009/04/12/56289.html
--------------------------------------------------------------
英文手册,manual;
常用功能:
Jar/war 打包;
Javadoc/javadocs 生成文档;
Ant查找build.xml文件,根据配置文件执行任务;
示例:Hello World with Apache Ant
详见http://ant.apache.org/manual/index.html
建立类:(路径:D:\src)
package oata;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
在d盘根目录下建立build.xml文件;(cmd-d:-ant运行)
//项目;---basedir根目录;name项目名称;default默认要执行的target;
<project name="HelloWorld" basedir="." default="main">
//参数;
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="main-class" value="oata.HelloWorld"/>
//清除已有文件;---target为操作任务;
<target name="clean">
<delete dir="${build.dir}"/>
</target>
//创建文件、class;---javac编译java文件为class文件;| srcdir为需要编译的目录,destdir为编译后的存放目录;
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
//创建jar;---jarfile表示生成的jar的文件,basedir表示class文件所在的目录
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
//运行jar;
<target name="run" depends="jar">
<java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>
</target>
<target name="clean-build" depends="clean,jar"/>
<target name="main" depends="clean,run"/>
</project>
使用已存在的jar文件;
1),d盘下新建lib文件夹,放入log4j.jar文件;
2),修改HelloWorld 类;
package oata;
import org.apache.log4j.Logger;
import org.apache.log4j.BasicConfigurator;
public class HelloWorld {
static Logger logger = Logger.getLogger(HelloWorld.class);
public static void main(String[] args) {
BasicConfigurator.configure();
logger.info("Hello World"); // the old SysO-statement
}
}
3),修改build.xml;
<project name="HelloWorld" basedir="." default="main">
...
<property name="lib.dir" value="lib"/>
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>
...
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
</target>
<target name="run" depends="jar">
<java fork="true" classname="${main-class}">
<classpath>
<path refid="classpath"/>
<path location="${jar.dir}/${ant.project.name}.jar"/>
</classpath>
</java>
</target>
...
</project>
运行,run给出的输出是:
[java] 0 [main] INFO oata.HelloWorld - Hello World
拷贝已存在的文件:
...
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" excludes="**/*.java"/>
</copy>
</target>
...
//todir拷贝到的目标路径;dir被拷贝的原文件路径;excludes除什么而外的文件;
-------------------------------------------
一些概念:
<mkdir>标签
该标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名,其代码如下:
<mkdir dir=”${class.root}”/>
/////////////////////////////////////////////////////////////////////////////////////////////////////////
Eclipse中使用:
通过ant自动部署项目到tomcat下;
参考文章:
http://www.cnblogs.com/Mainz/archive/2012/04/14/2447786.html
Eclipse添加ant;
建立build.xml文件;
-------------------------------------------
Myeclipse使用ant:
1),已有项目;
2),项目根目录下建立build.xml文件;
3),window-preferences-ant,runtime,ant Home,选取本地已安装的ant路径,apply,ok;
~
项目,右键,属性,单击builders,
单击java builder,点击new 按钮,选中Ant Builder ,ok;
~
在 edit launch configuration...窗体,name中填写一个自定义名称;
buildfile点击Browse Workspace..
在弹出的choose location中,点选左边的项目,右边的build.xml,ok;
完成配置;
运行build:
Build.xml右键,run as,ant build;
写build.xml内容:
据需要自己写内容;
···
配置:
<project default="deploy" basedir="." name="cas1">
//声明参数
<!--web应用的上下文-->
<property name="antProjectName" value="cas1"/>
<!--tomcat的webapps的路径-->
<property name="dest-dir" value="D:\apache-tomcat-7.0.8\webapps"/>
//先删除已有的文件;
<target name="init">
<delete dir="${dest-dir}/${antProjectName}"/>
<delete file="${dest-dir}/${antProjectName}.war"/>
</target>
<!--copy WebRoot下的文件到指定目录下 | exclude例外-->
<target name="copyfile" depends="init">
<copy todir="${dest-dir}/${antProjectName}">
<fileset dir="${basedir}/WebRoot">
<include name="**" />
<exclude name="**/portlet-api_2.0_spec-1.0.jar"/>
</fileset>
</copy>
</target>
<!--copy WebRoot下的文件到指定目录下,并生成.war文件-->
<target name="war" depends="init">
<war destfile="${dest-dir}/${antProjectName}.war" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
<fileset dir="${basedir}/WebRoot">
<include name="**" />
<exclude name="**/portlet-api_2.0_spec-1.0.jar"/>
</fileset>
</war>
</target>
//统一调用要执行的target,---放在最后位置;
<target name="deploy" depends="copyfile,war,jar"/>
-------------------------------------------------
//src,项目根目录下的src文件夹;build,项目根目录下的build文件夹;
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
//创建一个目录文件夹,将项目src下的内容生成其中;
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
//创建一个目录文件夹,将上面生成的{build.dir}/classes下的内容生成其中,生成为jar文件;
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
</jar>
</target>
1),apache网站,http://ant.apache.org/;
2),最新的ant下载地址,http://ant.apache.org/bindownload.cgi
3),点击超链下载,apache-ant-1.9.0-bin.zip
解压缩;
设置环境变量;
ANT_HOME D:\javaSoft\apache-ant-1.9.0(这是ant解压目录)
Path ;D:\javaSoft\apache-ant-1.9.0\bin(注意和前面分隔的分号;加在最后)
Cmd中输入ant 显示Buildfile:build.xml does not exist! Build failed
输入ant -version 显示ant版本;
···
安装成功。
总:
Ant用于生成jar文件(自动打包和部署);
另:
Eclipse中使用ant自动部署实现我的项目后,保存ant为过去式;转入maven;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
一个简单的使用ANT的例子
在 D 盘根目录下新建一个 build.xml 文件,文件的内容如下:
<?xml version="1.0" encoding="GBK"?>
<project name="测试脚本" default="copyfile" basedir="." >
<target name="copyfile">
<copy file="d:/a.txt" todir="e:/Temp" overwrite="true" />
</target>
</project>
在 D 盘根目录下新建一个 a.txt 文件,内容随便。
进入DOS,依次执行:
d:
ant
如同下面的截图:
执行完毕后,我们会在 e:/Temp 目录下看到 a.txt 文件,跟D盘根目录下的完全一样,即Copy成功。
参考文章:
ANT 的安装和配置,
http://www.cnblogs.com/ghj1976/archive/2010/04/14/1711914.html
···
ANT初学入门之一:基本概念、安装与配置,
http://www.cnitblog.com/intrl/archive/2009/04/12/56288.html
【ANT专辑 一】ANT在Web项目中的应用--工具介绍,
http://www.cnitblog.com/intrl/archive/2009/07/25/60358.html
···
ANT十五大最佳实践详解,
http://www.cnitblog.com/intrl/archive/2009/04/12/56289.html
--------------------------------------------------------------
英文手册,manual;
常用功能:
Jar/war 打包;
Javadoc/javadocs 生成文档;
Ant查找build.xml文件,根据配置文件执行任务;
示例:Hello World with Apache Ant
详见http://ant.apache.org/manual/index.html
建立类:(路径:D:\src)
package oata;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
在d盘根目录下建立build.xml文件;(cmd-d:-ant运行)
//项目;---basedir根目录;name项目名称;default默认要执行的target;
<project name="HelloWorld" basedir="." default="main">
//参数;
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="main-class" value="oata.HelloWorld"/>
//清除已有文件;---target为操作任务;
<target name="clean">
<delete dir="${build.dir}"/>
</target>
//创建文件、class;---javac编译java文件为class文件;| srcdir为需要编译的目录,destdir为编译后的存放目录;
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
//创建jar;---jarfile表示生成的jar的文件,basedir表示class文件所在的目录
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
//运行jar;
<target name="run" depends="jar">
<java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>
</target>
<target name="clean-build" depends="clean,jar"/>
<target name="main" depends="clean,run"/>
</project>
使用已存在的jar文件;
1),d盘下新建lib文件夹,放入log4j.jar文件;
2),修改HelloWorld 类;
package oata;
import org.apache.log4j.Logger;
import org.apache.log4j.BasicConfigurator;
public class HelloWorld {
static Logger logger = Logger.getLogger(HelloWorld.class);
public static void main(String[] args) {
BasicConfigurator.configure();
logger.info("Hello World"); // the old SysO-statement
}
}
3),修改build.xml;
<project name="HelloWorld" basedir="." default="main">
...
<property name="lib.dir" value="lib"/>
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>
...
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
</target>
<target name="run" depends="jar">
<java fork="true" classname="${main-class}">
<classpath>
<path refid="classpath"/>
<path location="${jar.dir}/${ant.project.name}.jar"/>
</classpath>
</java>
</target>
...
</project>
运行,run给出的输出是:
[java] 0 [main] INFO oata.HelloWorld - Hello World
拷贝已存在的文件:
...
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" excludes="**/*.java"/>
</copy>
</target>
...
//todir拷贝到的目标路径;dir被拷贝的原文件路径;excludes除什么而外的文件;
-------------------------------------------
一些概念:
<mkdir>标签
该标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名,其代码如下:
<mkdir dir=”${class.root}”/>
/////////////////////////////////////////////////////////////////////////////////////////////////////////
Eclipse中使用:
通过ant自动部署项目到tomcat下;
参考文章:
http://www.cnblogs.com/Mainz/archive/2012/04/14/2447786.html
Eclipse添加ant;
建立build.xml文件;
-------------------------------------------
Myeclipse使用ant:
1),已有项目;
2),项目根目录下建立build.xml文件;
3),window-preferences-ant,runtime,ant Home,选取本地已安装的ant路径,apply,ok;
~
项目,右键,属性,单击builders,
单击java builder,点击new 按钮,选中Ant Builder ,ok;
~
在 edit launch configuration...窗体,name中填写一个自定义名称;
buildfile点击Browse Workspace..
在弹出的choose location中,点选左边的项目,右边的build.xml,ok;
完成配置;
运行build:
Build.xml右键,run as,ant build;
写build.xml内容:
据需要自己写内容;
···
配置:
<project default="deploy" basedir="." name="cas1">
//声明参数
<!--web应用的上下文-->
<property name="antProjectName" value="cas1"/>
<!--tomcat的webapps的路径-->
<property name="dest-dir" value="D:\apache-tomcat-7.0.8\webapps"/>
//先删除已有的文件;
<target name="init">
<delete dir="${dest-dir}/${antProjectName}"/>
<delete file="${dest-dir}/${antProjectName}.war"/>
</target>
<!--copy WebRoot下的文件到指定目录下 | exclude例外-->
<target name="copyfile" depends="init">
<copy todir="${dest-dir}/${antProjectName}">
<fileset dir="${basedir}/WebRoot">
<include name="**" />
<exclude name="**/portlet-api_2.0_spec-1.0.jar"/>
</fileset>
</copy>
</target>
<!--copy WebRoot下的文件到指定目录下,并生成.war文件-->
<target name="war" depends="init">
<war destfile="${dest-dir}/${antProjectName}.war" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
<fileset dir="${basedir}/WebRoot">
<include name="**" />
<exclude name="**/portlet-api_2.0_spec-1.0.jar"/>
</fileset>
</war>
</target>
//统一调用要执行的target,---放在最后位置;
<target name="deploy" depends="copyfile,war,jar"/>
-------------------------------------------------
//src,项目根目录下的src文件夹;build,项目根目录下的build文件夹;
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
//创建一个目录文件夹,将项目src下的内容生成其中;
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}"/>
</target>
//创建一个目录文件夹,将上面生成的{build.dir}/classes下的内容生成其中,生成为jar文件;
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
</jar>
</target>
相关文章推荐
- ANT初步使用
- 使用ant及IDE配置文件进行Android项目初步的标准化,规范化构建
- 自动构建工具Ant深入剖析(一) 配置环境及初步使用
- 自动构建工具Ant深入剖析(一) 配置环境及初步使用
- 使用java/groovy扩展ant初步
- ant笔记(一)初步使用:搭建环境和运行测试例子
- 自动构建工具Ant深入剖析(一) 配置环境及初步使用
- [置顶] Android 使用Ant+Emma+Junit收集android代码覆盖率(来自联想的一位同事2012.12.24)
- Dagger2初步使用篇1
- fedora fc3 的初步使用1- ntfs的使用
- 使用 ant 让你愉快编程(5)
- 使用Ant和org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader打包可运行Jar后找不到main的解决方案
- Eclipse快速上手指南之使用ANT - [转贴]
- 初步使用github,并上传下载文件
- 新浪微博API使用初步介绍——解决回调地址的问题
- IDEA之Ant使用
- 使用Gradle与Ant实现多个apk的自动打包
- Qt自定义控件的创建与初步使用
- 批量压缩js、css文件脚本(使用Ant构建)
- iOS中的NSTimer定时器的初步使用解析