zoukankan      html  css  js  c++  java
  • Hello World with Ant

            都说Linux环境下的程序员如果不会使用GNU make来构建和管理自己的工程,应该不能算是一个合格的专业程序员,至少不能称得上是Unix程序员。

            而在一说到Ant的时候,很多人就把这两个的功能对比来说,所以是否可以这样说呢?如果不能用Ant来构建和管理自己的工程,应该不能算是一个合格的Java工程师呢?关于Ant和make的关系,这里只说一句,与make相比,Ant完全由Java实现,具有跨平台的好处。

            说了这么多,那么Ant到底是用来干什么呢?你如果从网上查,都会这样告诉你,这是一个构建工具,但又不仅限于构建。例如可以和Xdoclet配合生成Hibernate配置文件和Hibernate映射文件。

            要使用,就得下载、安装,那么就先说一下下载安装。

            自己度娘或谷哥找一下Ant,然后解压。接下来就埼一些配置:

            设定ANT_HOME环境变量,指向你解压的Ant目录。然后在Path中添加%ANT_HOME%in。这里小科普一下,你在cmd中运行某个命令时,报不是内部命令这种错的时候,就看一下这个命令所在的路径是不是在Path中。

            完事之后,打开cmd,打一下ant -version,看会不会出现ant的版本信息,如果出现了呢就说明你的ant已经安装好了。

            下面就开始进入Ant的天堂了,首先来了解一下Ant的基本使用

            首先,建立一建立一个空的文件夹,我命名为testAnt,在这个文件夹中建立一src/jianxin/ant的目录,在ant中建立一个HelloWorld.java文件:

    package jianxin.ant;
    public class HelloWorld{
    	public static void main(String[] args){
    		System.out.println("Hello World");
    	}
    }


            然后,在在testAnt中建立build.xml文件

    <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="jianxin.ant.HelloWorld"/>
    
        <target name="clean">
            <delete dir="${build.dir}"/>
        </target>
    
        <target name="compile">
            <mkdir dir="${classes.dir}"/>
            <javac srcdir="${src.dir}" destdir="${classes.dir}"/>
        </target>
    
        <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>
    
        <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>


            打开cmd窗口,进入testAnt的根目录,运行ant:

            

            至此,一个工程中需要的清理、编译、打包、运行就都通过Ant帮助我们完成了。

            此文只是一个Ant的Hello World,从上面的build的编写中不难发现一些熟悉的字样,deltete、mkdir、javac、jar、java…,这些命令在cmd的命令行中都是存在的,所以无论Ant如何变化,只要用你能手动写cmd来完成对项目的管理,那么都可以通过查询Ant的文档,然后编写Ant来自动完成,现在来看,Ant被主要被用来构建,但又不局限于构建,就清楚明白了。

            关于project、target,property三个标签,不多说,自己做一遍上面我敲的例子后,如果还是不明白,那么留言讨论。

  • 相关阅读:
    网络知识梳理--OSI七层网络与TCP/IP五层网络架构及二层/三层网络(转)
    OSI七层模型与TCP/IP五层模型(转)
    C语言结构体指针初始化(转)
    关于空指针NULL、野指针、通用指针 (转)
    C语言的通用指针类型(void *)
    使用matlab生成用于ROM初始化的coe文件(转)
    电脑运行msi安装包提示the error code is 2503/2502如何解决
    mysql命令行修改字符编码
    struts 2 时间控件
    java 的 struts2 Spring Hibernate 三大框架的整合
  • 原文地址:https://www.cnblogs.com/pangblog/p/3241288.html
Copyright © 2011-2022 走看看