ANT 构建和部署项目

Apache Ant的介绍与配置 Apache Ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。 阅读详情

ANT 简介

  • Apache ANT 是一个 Java 项目的构建工具,用于打包部署Java项目,最早是使用于打包部署 Tomcat 项目,后面逐步拓展到打包部署大部分Java项目;
  • Apache ANT 是平台无关的,可以同于处理在任何平台下的Java项目打包部署;
  • Apache ANT 核心是使用XML脚本编写打包任务(该脚本被称为 build.xml),使用其提供的命令行工具,实现将现有的项目自动化打包为 JAR,WAR 等文件,方便部署到服务器生产环境;

ANT 安装配置

1)Apache ANT 是使用Java编写的,下载之前需要在完成JDK的安装配置,Apache ANT 二进制文件的下载地址:
2)下载压缩包后,解压到系统的某一个文件夹中;
3)在系统环境变量中,添加一个 ANT_HOME 变量,指向 Apache ANT 的安装目录文件夹;
将 Apache ANT 中bin文件夹(如 c:\ apache-ant-1.10.1\bin )路径,添加到系统环境变量的 PATH 变量中,方便调用ant的命令行工具(这个步骤不是必须的);
类似如下示例:
1
ANT_HOME c:\apache-ant-1.10.1
2
PATH     %ANT_HOME%\bin
4)验证ANT是否安装成功,命令行中输入以下指令:
1
C:>ant -version
返回 Apache ANT 版本信息,则说明安装成功;



ANT 常用内置任务说明列表

ANT 构建项目基本的步骤如下:创建 build.xml ,通过命令行运行相关指令,输出项目的JAR/WAR打包形式;
build.xml 文件是ANT运行的配置文件,一般的格式如下:
1
<project>
2
    <property/>
3
    <property/>
4
    <target name="init">
5
        ......
6
    </target>
7
    <target>
8
        ......
9
    </target>
10
    <target>
11
        ......
12
    </target>
13
</project>
14
​
<project>便签是项目的根标签,里面包含一系列的<target>标签和其他标签,<target>是任务标签,标签内为实际执行任务的内容,在ANT运行时,通过指定target指定配置文件中的target(详见下面运行ANT部分);

以下是常见 Task 标签及常用属性的列表,完整的 Task 标签列表参见:http://ant.apache.org/manual/index.html
标签说明及常用属性
基础标签
<project>build.xml 的根元素,通常位于文件的顶部,常用属性如下:
  • name    -- 指定工程名称;
  • basedir  --指定工程的基路径,如果设为".",即 build.xml 文件所在路径;
  • default  --执行默认执行的 target,在运行ANT没有指定target时,执行该默认target;
<target>任务标签,一般一个traget用于描述一个任务,常用属性如下:
  • name       --指定target名称
  • depends  --指定一个或多个traget名,表示运行该target之前先运行该这些指定 traget
  • if              --指定一个属性名,当该属性被设置时,执行该traget;
  • unless      --指定一个属性名,待该属性没有被设置时,执行traget
  • description  --指定该target的描述信息
<property>
设置属性,一般键值对的形式存在,在其他标签中可以通过 ${name} 的形式引用该value;
  • name  --指定属性名;
  • value  --指定属性值;
文件操作
<mkdir>
创建目录,常用属性如下:
  • dir   --目录地址
<move>移动文件/目录,常与<fileset>配合使用 ;
  • file            --要移动的原文件/目录
  • todir         --移动目标目录
  • overwrite  --当文件名重复时,是否覆盖操作
<copy>复制文件/目录,常用参数同<move>,常与<fileset>配合使用;
<delete>删除文件/目录,常与<fileset>配合使用;
  • file/dir   --待删除的文件/目录
项目编译,打包,运行
<javac> 编译 Java 源文件,常用属性如下:
  • srcdir      --指定Java源文件位置;
  • destdir    --指定编译后存放Class文件的位置;
  • classpath --额外使用的类路径classpath
<java> 运行 java class 或 jar
  • classname  --运行class文件的名称(不带.class尾缀)
  • args            --运行参数
<javadoc>生成项目的 javadoc 文档
  • sourcename   --指定原文件路径(一般指向java源文件夹 src文件夹);
  • destdir            --javadoc输出目录
<war>生成项目的 war 包
  • warxml               -- 需要的web.xml文件路径
  • warfile/destfile   -- 生成的WAR路径(具体到创建文件名)
<jar>生成项目的 jar 包
  • destfile    --生成 JAR 路径(具体到创建文件名)
  • basedir    --生成dir的起始路径
  • exclude    --不包括的文件




ANT 构建和部署项目


以下是示例用的JavaWeb项目结构:
1
ServletTest2                                             
2
    │                                                                                                         
3
    ├─src                                                           
4
    │  ├─control1                                                   
5
    │  │      CheckServlet.java                                     
6
    │  │      OutputServlet.java                                    
7
    │  │      WelcomeServlet.java                                   
8
    │  │                                                            
9
    │  ├─control2                                                   
10
    │  │      UploadFileServlet.java                                
11
    │  │                                                            
12
    │  └─control3                                                   
13
    │          RedirectServlet.java                                 
14
    │          RefreshServlet.java                                  
15
    │                                                               
16
    └─web                                                           
17
        │  hello.jsp                                                
18
        │  index.jsp                                                
19
        │  login.html                                               
20
        │  message.jsp                                              
21
        │  upload.html                                              
22
        │                                                           
23
        └─WEB-INF                                                   
24
            │  web.xml                                                                                                 
25
            ├─classes                                               
26
            │                                                                      
27
            └─lib                                                   
28
                    commons-fileupload-1.3.3.jar                    
29
                    commons-io-2.5.jar          
一般 build.xml ANT 配置文件位于项目的根目录下,在以上示例中位于 ServletTest2/build.xml 目录下;

1、基本项目构建

创建 build.xml
1
<project name="ServletTest2" default="about" basedir=".">
2
​
3
    <!--启动任务,各种各参数创建-->
4
    <target name="init">
5
        <property name="src" value="src" />
6
        <property name="web" value="web" />
7
        <!--编译java文件依赖的所有外部包路径集-->
8
        <path id="dependence-path">
9
            <fileset dir="${web}/WEB-INF/lib">
10
                <include name="*.jar" />
11
            </fileset>
12
        </path>
13
    </target>
14
​
15
    <!--编译java源文件-->
16
    <target name="compile" depends="init" >
17
        <mkdir dir="${web}/WEB-INF/classes"/>
18
        <javac srcdir="${src}" destdir="${web}/WEB-INF/classes">
19
            <classpath refid="dependence-path" />
20
        </javac>
21
        <echo message="Compliation is finished!" />
22
    </target>
23
​
24
    <!--创建项目的javadoc-->
25
    <target name="create_javadoc" depends="init" >
26
        <javadoc  sourcepath="${src}" destdir="javadoc" version="true" windowtitle="ServlerTest2 Application" />
27
        <echo message="Javadoc has been created!" />
28
    </target>
29
​
30
    <!--创建项目的WAR包-->
31
    <target name="create_war" depends="compile">
32
        <war destfile="ServletTest2.war" webxml="${web}/WEB-INF/web.xml">
33
            <classes dir="${web}/WEB-INF/classes" />
34
            <lib dir="${web}/WEB-INF/lib" />
35
            <fileset dir="${web}">
36
                <include name="**/*.*" />
37
            </fileset>
38
        </war>
39
        <echo message="ervletTest2.war has bean created!" />
40
    </target>
41
​
42
    <!--清除所有生成的class-->
43
    <target name="clean_class" depends="init">
44
        <delete>
45
            <fileset dir="${web}/WEB-INF/classes">
46
                <include name="**/*.class" />
47
            </fileset>
48
        </delete>
49
    </target>
50
​
51
    <!--build.xml的描述说明-->
52
    <target name="about">
53
        <echo>
54
            The build.xml file contains targets for building ServletTest2 web applaction.
55
            Just fo test.
56
        </echo>
57
    </target>
58
</project>

2、运行 ANT

运行 build.xml 指定的 traget 语法如下:
1
ant -buildfile <build-dir>/build.xml tragetname
以以上build.xml例子为例,要生成项目的 WAR 文件步骤如下:
1
1、进入 build.xml 所在的目录
2
cd D:\Program Design\ServletTest2
3
​
4
2、运行 build.xml 生成 WAR 的 target
5
ant -buildfile D:\Program Design\ServletTest2\build.xml create_war
之后便会在 ServletTest2 根目录下生成一个 WAR 文件;

3、部署项目

将以上生成的的WAR文件,放置到 Tomcat 服务器的 <CATALINA_HOME>/webapps 目录下即可,Tomcat 在运行时会自动将 WAR文件展开目录;









【Jenkins】+【Ant】+【SVN】一键部署web项目 Jenkins Ant 打war包 一键部署项目 阅读详情

相关推荐

《供应链金融风控模型设计:多维度数据整合与动态风险预警机制》

注:方案突出供应链金融「三流合一」(资金流、物流、信息流)的风控逻辑,通过多维度数据整合与动态预警,解决传统风控中中小企业信用评估难、链条风险传导监测滞后的问题。◦ 构建供应链拓扑图,计算「核心企业违约对上下游企业的影响系数」(如某电子厂商违约时,其前五大供应商的风险权重自动提升40%)• 区块链应用:将核心企业应付账款上链存证,防止「一票多融」欺诈(如某供应商用同一应收账款在多家银行融资)◦ 财务数据:核心企业审计报告、上下游企业纳税数据(增值税发票频次/金额)

2501_91651383的博客 1549

ant入门教程

ant入门教程一、概述二、优点三、安装和配置四、测试ant五、ant的运行时环境六、ant命令七、ant脚本:使用节点、元素和属性、命令指令1、project 节点元素2、target节点元素3、property属性节点元素4、copy命令5、delete命令6、 mkdir 命令7、 move 命令8、echo 命令9、jar 标签节点元素10、javac 标签节点元素11、java 标签节点元素12、arg 数据参数元素13、ervironment 类型14、filelist 文件集合列表15、file

Orchestrator_me的博客 2089

Field-Oriented Control (FOC) 矢量控制 磁场定向控制

Field-Oriented Control (FOC) 磁场定向控制(FOC),也称为矢量控制,是一种用于控制永磁同步电动机(PMSM)和交流感应电动机(ACIM)的技术。 FOC在整个扭矩和速度范围内都具有良好的控制能力。 FOC的实现需要将定子电流从固定参考系转换为转子磁通参考系(也称为d-q参考系)。 速度控制和转矩控制是FOC最常用的控制模式。位置控制模式不太常见。大多数牵引应用使用转矩控制模式,在该模式下,电动机控制系统遵循参考转矩值。在速度控制模式下,电机控制器遵循参考速度值,并生成用于形成内

>>> 1万+

Apache Ant的使用(1)——基础使用教程

一、什么是Ant 以下介绍来自百度百科: Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。 我们在使用Eclipse开发Android应用时,Eclipse使用的项目构建工具就是Ant。 用户群:大多数的Java设计都被用于管理大量信息流,例如纽约州就使用Apache Ant去管理

记录技术,记录生活 3万+

实测对比:DeepSeek、豆包、千问三大AI模型生成测试用例谁更强?(附完整代码)

本文通过实测对比了DeepSeek、豆包、千问三大AI模型在生成测试用例方面的表现。文章提供了完整的Python代码实现,详细分析了各模型在用例完整性、准确性、边界覆盖及幻觉控制等维度的差异,并分享了工程化集成与多模型融合等优化策略,旨在帮助测试团队选择合适工具以提升工作效率。

ik6789012的博客 952

保姆级教程:手把手教你从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件(附网址规律总结)

本文提供从ENSEMBL官网下载GRCh38/GRCh37的GTF注释文件的详细教程,包括路径解析、版本号确定和下载命令示例。特别解析了GRCh37的特殊存储结构,并分享批量下载、文件校验等高级技巧,帮助生物信息学研究者高效获取基因组注释文件。

weixin_29289821的博客 204

Apache-ant 工具的介绍、安装及build.xml文件的解析

0. ant介绍 Apache-ant是一个将软件编译、测试、部署步骤联系在一起加以自动化的一个工具,大多数用于java环境中的软件开发,由Apache软件基金会所提供。默认情况下,XML文件名为build.xml。 1. ant 安装 注:ant依赖于jdk,首先需要配置jdk JAVA_HOME a. 下载Apache-ant Apache-ant下载链接 当前版本为apache-a...

1、测试博主技术知识分享 2、pos行业知识技术分享 3、java后端技术知识分享 4、嵌入式技术知识分享 5、运维部署相关知识分享 2907

Windows10 Qt下用MINGW 编译VTK-8.1.0

1. 材料准备(1) 下载VTK-8.1.0: https://www.vtk.org/download/(2) 下载TIFF库: http://gnuwin32.sourceforge.net/packages/tiff.htm(直接安装即可,注意选择路径不包含中文字符)2. 安装: (1) cmake配置: a. Module下配置:勾选下图所示的六项 b. Build 配置:勾选这里能够在b...

hit1524468的专栏 3892

用Ant实现Java项目的自动构建和部署

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。 下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:apache-ant-1.7.0),即可使用。添加系统环境变量:ANT_HOME,该变量指向Ant解压后的根目...

Criss@陈磊 1290

【突变检验合集】含Pettitt突变检验等

突变检验方法合集

WW、forever的博客 3534

【应用】什么是Azure?一文读懂微软云的核心逻辑与全球版图

作为微软的核心云计算服务平台,Azure不仅是数字化转型的引擎,更是全球企业在构建、扩展与优化IT基础设施时的首选平台。在这篇文章中,我们将深入探讨Azure云服务平台的各个方面,涵盖其核心优势、架构、功能、应用场景以及未来发展趋势。

高校图书馆高级系统架构师/研究馆员,推动高校AI从概念演示到可评审、可交付、可运维:路线图与立项评审、PoC交付、评测回归与上线运维(Baseline/Eval/Ops)。 1963

java 自动构建_用Ant实现Java项目的自动构建和部署

用Ant实现Java项目的自动构建和部署#Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。安装与配置下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:\apache-ant-1.7.0),即可使用。添加系统环境变量...

weixin_29304021的博客 277

RK3576 调试ov2735 mipi-csi摄像头

摘要:本文记录了基于RK3576平台调试OV2735 MIPI摄像头的全过程。开发环境采用Linux 6.1内核和Buildroot文件系统。调试步骤包括:1)硬件检查(电源、晶振和引脚连接);2)驱动配置(设备树节点、ISP通道设置);3)驱动验证(通过ID检测和I2C工具测试);4)推流测试(使用v4l2和gstreamer工具)。重点解决了复位引脚配置、时钟命名匹配等关键问题,并通过寄存器检查确保初始化正常。最终实现了摄像头数据流的成功输出,为嵌入式视觉应用开发提供了完整参考方案。

qq_45147279的博客 1063

Ant详解(用Ant实现Java项目的自动构建和部署)

原文地址:http://tech.it168.com/j/2007-11-09/200711091344781.shtml        Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。 一.             安装与配置 下载地址:http:

学而时习之 7524

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

ant java自动化打包_用Ant实现java项目的自动构建和部署

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。一.安装与配置下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:"apache-ant-1.7.0),即可使用。添加系统环境变量:ANT_HOME,该变量指向Ant解...

weixin_42390092的博客 303

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

ant java自动化打包_用Ant实现Java项目的自动构建和部署

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。一.安装与配置下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:"apache-ant-1.7.0),即可使用。添加系统环境变量:ANT_HOME,该变量指向Ant解...

weixin_39639919的博客 150

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Ant实现Java项目的自动构建和部署

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。 一.             安装与配置 下载地址:http://ant.apache.org/,在本文中下载的是1.7.0版本。解压到某个目录(例如E:"apache-ant-1.7.0),即可使用。 添加

lixiangers的专栏 653
上一篇: Java List 和 数组之间的相互转化
下一篇: Maven 安装配置&基本使用
Al_assad
博客等级 码龄11年 591粉丝 341原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值