`

我使用过的Linux命令之ant - 强大的Java开发构建工具

阅读更多

我使用过的Linux命令之ant - 强大的Java开发构建工具

本文链接:http://codingstandards.iteye.com/blog/801506   (转载请注明出处)

 

用途说明

ant严格说来,ant其实并非原生的Linux命令,但它 是一个使用广泛、功能强大的跨平台 构建工具程序,尤其是进行Java开发时,许多开源的Java项目都使用ant作为构建工具。ant命令一般情况下使用当前目录下的build.xml文件作为构建用的配置文件,具体配置文件怎么编写本文不讨论,这个绝对可以展开成一个系列。本文主要演示一下在Linux下怎么安装ant,以及常用方式等。

官方站点:http://ant.apache.org/

当前版本:1.8.1

安装步骤

安装条件

必须安装有jdk。下面是官方网站提供的两个注意事项:

Note: If a JDK is not present, only the JRE runtime, then many tasks will not work.

Note: Ant 1.8.* works with jdk1.4 and higher, Ant 1.7.* works with jdk1.3 and higher, Ant 1.6.* works with jdk 1.2 and higher, Ant 1.2 to Ant 1.5.* work with jdk 1.1 and higher.

下载文件

如果Linux机器不能上公网

第一步,获取安装包。到http://ant.apache.org/bindownload.cgi 下载apache-ant-1.8.1-bin.tar.gz

第二步,上传到Linux机器。使用sftp或者ftp。

 

[root@bbqztweb setup]# ls -l

-rw-r--r--    1 root     root      8264796  5月  1 06:03 apache-ant-1.8.1-bin.tar.gz

如果Linux机器能上公网

可直接使用wget获取安装包,使用人人网上的镜像文件比较快。如下所示:

[root@bbqztweb setup]# wget http://labs.renren.com/apache-mirror//ant/binaries/apache-ant-1.8.1-bin.tar.gz
--21:08:03--  http://labs.renren.com/apache-mirror//ant/binaries/apache-ant-1.8.1-bin.tar.gz
           => `apache-ant-1.8.1-bin.tar.gz'
正在解析主机 labs.renren.com... 123.129.232.121
Connecting to labs.renren.com|123.129.232.121|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:8,264,796 (7.9M) [application/x-gzip]

100%[========================================================================================>] 8,264,796    376.27K/s    ETA 00:00

21:08:30 (314.87 KB/s) - `apache-ant-1.8.1-bin.tar.gz' saved [8264796/8264796]

 

[root@bbqztweb setup]# ls -l

-rw-r--r--    1 root     root      8264796  5月  1 06:03 apache-ant-1.8.1-bin.tar.gz

 

解压文件

[root@bbqztweb setup]# tar zxf apache-ant-1.8.1-bin.tar.gz
[root@bbqztweb setup]# mkdir -p /opt/apache
[root@bbqztweb setup]# mv apache-ant-1.8.1 /opt/apache
[root@bbqztweb setup]# ls /opt/apache
apache-ant-1.8.0  apache-ant-1.8.1  apache-tomcat-6.0.26  axis2-1.5.1

设置环境

编辑文件/etc/profile.d/ant.sh

[root@web jlib]# vim /etc/profile.d/ant.sh

 

#! /bin/sh

# 2007.01.22 ant 2010.03.18 2010.06.28
if [ -d /opt/apache/apache-ant-1.8.1 ]; then
        export ANT_HOME=/opt/apache/apache-ant-1.8.1
elif [ -d /opt/apache/apache-ant-1.8.0 ]; then
        export ANT_HOME=/opt/apache/apache-ant-1.8.0
elif [ -d /usr/apache/apache-ant-1.7.1 ]; then
        export ANT_HOME=/usr/apache/apache-ant-1.7.1
elif [ -d /usr/apache/apache-ant-1.7.0 ]; then
        export ANT_HOME=/usr/apache/apache-ant-1.7.0
elif [ -d /usr/apache/apache-ant-1.6.5 ]; then
        export ANT_HOME=/usr/apache/apache-ant-1.6.5
fi
if [ $ANT_HOME ]; then
        [ $PATH ] && PATH=$ANT_HOME/bin:$PATH || PATH=$ANT_HOME/bin
fi
 

重新登录

[root@web jlib]# echo $ANT_HOME
/opt/apache/apache-ant-1.8.1
[root@web jlib]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/opt/apache/apache-ant-1.8.1/bin:/usr/java/jdk1.6.0_20/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@web jlib]# ant
Buildfile: build.xml does not exist!
Build failed

[root@web jlib]# ant -version
Apache Ant version 1.8.1 compiled on April 30 2010
[root@web jlib]#

常用参数

-f build.xml  指定不同于build.xml的构建配置文件。

-version 取版本号。

 

使用示例

示例一

[root@web web_server]# ls -l build.xml
-rw-r--r-- 1 root root 5978 09-07 19:52 build.xml

[root@web web_server]# ant
Buildfile: /opt/web/web_server/build.xml

init:
     [copy] Warning: Could not find file /opt/web/hyjc2/hyjc.jar to copy.
     [copy] Warning: Could not find file /opt/hyjc2/hyjc.jar to copy.

compile:
    [javac] /opt/web/web_server/build.xml:42: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

BUILD SUCCESSFUL
Total time: 0 seconds
[root@web web_server]#

示例二 指定build文件

[root@web web_admin]# ls -l tomcat-precompile.xml  
-rw-r--r-- 1 root root 3091 11-03 11:33 tomcat-precompile.xml
[root@web web_admin]# ant -f tomcat-precompile.xml     
Buildfile: /opt/web/web_admin/tomcat-precompile.xml

jspc:
     [echo] Compile JSP in: /opt/web/web_admin/WebRoot/WEB-INF/src
    [javac] /opt/web/web_admin/tomcat-precompile.xml:38: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 152 source files to /opt/web/web_admin/WebRoot/WEB-INF/src
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/download_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/ip_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/upfile_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/upload_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/upstat_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/common/upstop_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/fcktest/sample02_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/fcktest/sampleposteddata_jsp.java

此处省略掉了很多输出

    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/test/counter_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/wap/index_jsp.java
    [javac] /opt/web/web_admin/WebRoot/WEB-INF/src/org/apache/jsp/wap/login_jsp.java
    [javac] 注意:某些输入文件使用了未经检查或不安全的操作。
    [javac] 注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。

dist:

BUILD SUCCESSFUL
Total time: 6 seconds
[root@web web_admin]#

问题思考

1. ant下的常用task有哪些,怎么编写?(比如:javac,java,jar,exec等)

2. 官网上提到还有rpm安装方式,有兴趣的读者可以试一下。

相关资料

【1】Spring--Java程序员的春天 Linux下ant的安装

【2】官方站点中的Ant任务 Ant Tasks

 

返回 我使用过的Linux命令系列总目录

 

1
1
分享到:
评论
1 楼 iMzw 2010-11-03  
不用严格来说,ant 和 Linux 真的是没啥关系

相关推荐

    最新版linux apache-ant-1.9.15-bin.tar.gz

    Apache Ant 是一个基于Java的构建工具,用于自动化软件项目的构建过程。在Linux环境中,它常被用来编译、打包、测试和部署Java应用程序。标题提到的 "apache-ant-1.9.15-bin.tar.gz" 是Apache Ant的1.9.15版本的二...

    最新版linux apache-ant-1.10.8-bin.tar.gz

    总的来说,“apache-ant-1.10.8-bin.tar.gz”为Linux用户提供了一个强大且灵活的Java项目构建工具,能够有效地管理和控制软件开发的整个生命周期。通过熟练掌握Ant,开发者可以提高工作效率,确保构建过程的稳定性...

    apache-ant-1.9.9-bin.tar.gz 【适用于linux系统】

    Apache Ant 是一个开源的构建工具,广泛用于Java项目管理,由Apache软件基金会开发。它的工作原理是基于XML定义的build.xml文件,这个文件包含了构建过程中的各种任务,如编译、打包、测试和部署等。Ant是Java生态...

    apache-ant-1.9.6-linux包

    总结起来,Apache Ant 1.9.6是一个强大的构建工具,尤其在Linux环境中,通过设置环境变量和简单的命令行操作,即可轻松地集成到开发流程中。对于移动开发,尤其是Android项目,Ant提供了灵活性和自定义性,使其成为...

    apache-ant-1.9.16-bin.tar.gz

    总之,Apache Ant 1.9.16是一个强大的Java构建工具,提供了丰富的任务集和高度可定制的构建脚本,是Java开发者不可或缺的工具之一。了解和熟练使用Ant,将有助于提高开发效率,保证软件项目的构建质量。

    apache-ant-1.10.1-bin.tar.gz 【适用于linux系统】

    Apache Ant 是一个开源的构建工具,主要用于Java项目,但也可以应用于其他类型的软件开发。它以其XML格式的构建文件(build.xml)而闻名,允许开发者详细指定构建过程中的各种任务,如编译源代码、创建JAR文件、运行...

    apache-ant-1.9.2-bin.zip

    Apache Ant 是一个开源的构建工具,广泛用于Java项目管理,它是Apache软件基金会的一部分。这个"apache-ant-1.9.2-bin.zip"文件包含了Ant的1.9.2版本的二进制发行版,提供了运行和配置Ant所需的全部文件。 Ant的...

    官网下载完整的Ant,包括Ant-contrib

    Apache Ant是一个开源的Java构建工具,它以XML格式定义了构建过程,允许开发者编写可重复使用的构建脚本。Ant以其灵活性和跨平台性而受到广大Java开发者的青睐,它可以自动处理项目的编译、打包、测试等任务。在...

    apache-ant-1.10.12-bin.tar.gz

    Apache Ant 是一个广泛使用的Java构建工具,它遵循XML格式的构建文件来定义任务,从而自动化构建过程,包括编译、打包、测试和部署等。在Java开发中,Ant以其灵活性和可扩展性著称,是许多项目管理和持续集成流程的...

    apache-ant-1.10.3-bin.zip

    Apache Ant 是一个广泛使用的构建工具,尤其在Java开发领域中占据着重要地位。它是一个基于XML的构建系统,允许开发者通过定义任务来自动化构建过程,包括编译、打包、测试和部署应用程序。Apache Ant 1.10.3 是这个...

    apache-ant-1.9.9.zip

    总的来说,Apache Ant是一个强大的构建工具,这个"apache-ant-1.9.9.zip"压缩包为Mac用户提供了方便快捷的途径来管理和构建Java项目。用户只需按照简单的步骤设置和配置,即可充分利用Ant的自动化功能,提高开发效率...

    apache-ant-1.9.3-bin.tar.gz

    Apache Ant是Java编程领域中的一款广泛应用的构建工具,它的核心理念是通过XML描述构建过程,使得项目构建自动化、可配置且易于维护。标题中的"apache-ant-1.9.3-bin.tar.gz"是一个在Linux环境下使用的Ant版本的...

    apache-ant-1.10.6.rar

    Apache Ant 是一个广泛使用的Java构建工具,它基于XML来描述构建过程,允许开发者定义构建任务、依赖关系和目标。在Java开发中,Ant是管理和执行编译、打包、测试等任务的重要工具。"apache-ant-1.10.6.rar" 文件是...

    Apache-ant-1.9.6-bin.zip超级好用的工具

    Apache Ant 是一个强大的构建工具,尤其在Java开发领域中被广泛应用。它是一个基于XML的构建文件系统,允许开发者定义构建过程中的任务,如编译、打包、测试等,并且能够跨平台运行。Apache Ant 1.9.6是该项目的一个...

    apache-ant-1.9.9-bin

    Apache Ant 是一个广泛使用的构建工具,尤其在Java开发领域中占据着重要地位。它是一个基于XML的项目构建系统,允许开发者定义任务、依赖关系和构建过程,以自动化软件的编译、测试、打包等步骤。"apache-ant-1.9.9-...

    apache-ant-1.9.6-bin.tar.gz

    Apache Ant 是一个开源的构建工具,广泛用于Java项目构建,管理及自动化任务。在本案例中,我们讨论的是Apache Ant的版本1.9.6,它被封装在一个名为"apache-ant-1.9.6-bin.tar.gz"的压缩文件中,这通常表示它是面向...

    ant-installer.jar.zip

    Ant,作为一个由Apache软件基金会开发的Java语言编写的开源构建工具,便是其中的佼佼者。本文将围绕"ant-installer.jar.zip"这个压缩包文件,详细讲解Ant的安装、配置以及如何使用其进行项目构建。 首先,"ant-...

    ANT文件详解 ant介绍 ANT 命令

    Ant,全称为Apache Ant,是一款开源的、跨平台的项目构建工具,最初由James Duncan Davidson开发,现归属于Apache软件基金会Jakarta项目组。对于熟悉Linux系统的用户而言,Ant的功能类似于make工具,但相较于传统的...

    linux版_ant

    Linux版的Apache Ant是一款强大的构建工具,主要用于Java项目的编译、打包、测试和部署。Ant以其XML为基础的构建文件(build.xml)而闻名,它允许开发者定义任务序列,以自动化软件开发过程中的各种操作。在Linux...

    apache-ant-1.8.2-bin

    Apache Ant 是一个强大的构建工具,尤其在Java开发领域中被广泛应用。它的名字“Ant”源自建筑工蚁的形象,寓意这个工具能够像工蚁一样高效、有序地执行一系列任务,完成软件项目的构建流程。Apache Ant 1.8.2 版本...

Global site tag (gtag.js) - Google Analytics