ant的安装和使用

1.ant的安装

  1.1 添加环境变量:ANT_HOME=D:\software\ant\apache-ant-1.10.1

    在path中添加:%ANT_HOME%\bin

  1.2 测试是否安装成功

    在cmd中输入ant,如果出现如下提示表示安装成功

    

2.定义简单的build.xml

  2.1 创建HelloWord.java

package test;
public class HelloWorld{public static void main(String[] args){System.out.println("hello world!");}
}

  2.2 创建build.xml

<?xml version="1.0" encoding="UTF-8" ?><!-- 定义project节点,和默认运行的target,和工作根目录 -->
<project name="HelloWorld" default="run" basedir="."><!-- 定义变量 --><property name="src" value="src"/><property name="dest" value="classes"/><property name="hello_jar" value="hello.jar"/><!-- 定义target --><target name="init"><!-- 创建目录 --><mkdir dir="${dest}"/></target><!-- depends:依赖的target --><target name="compile" depends="init"><!-- 将srcdir目录中的文件进行编译,并将编译后的文件放入到destdir目录中 --><javac srcdir="${src}" destdir="${dest}"/></target><target name="build" depends="compile"><!-- 将basedir目录中的文件打成jar包 --><jar jarfile="${hello_jar}" basedir="${dest}"/></target><target name="run" depends="build"><!-- 运行classname --><java classname="test.HelloWorld" classpath="${hello_jar}"/></target><target name="clean"><!-- 删除dir目录和file文件 --><delete dir="${dest}"/><delete file="${hello_jar}"/></target><target name="rerun" depends="clean,run"><!-- 运行clean和run target --><ant target="clean"/><ant target="run"/></target>
</project>

3. 合并多个build.xml

  3.1 假设下边有三个小组,每个小组负责一部分,他们每个下面都有src和build.xml

  3.2 创建一个总的build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="main" default="build" basedir="."><property name="bin" value="${basedir}\bin"/><property name="src1" value="${basedir}\src1"/><property name="src2" value="${basedir}\src2"/><property name="src3" value="${basedir}\src3"/><target name="init"><mkdir dir="${bin}"/></target><target name="run"><!-- 分别运行各个目录下的target --><ant dir="${src1}" target="run"/><ant dir="${src2}" target="run"/><ant dir="${src3}" target="run"/></target><target name="clean"><ant dir="${src1}" target="clean"/><ant dir="${src2}" target="clean"/><ant dir="${src3}" target="clean"/></target><target name="call"><ant dir="${src1}" target="build"/><ant dir="${src2}" target="build"/><ant dir="${src3}" target="build"/></target><target name="build" depends="init,call"><!-- 复制指定的文件到todir --><copy todir="${bin}"><fileset dir="${src1}"><include name="*.jar"/></fileset><fileset dir="${src2}"><include name="*.jar"/></fileset><fileset dir="${src3}"><include name="*.jar"/></fileset></copy></target><target name="rebuild" depends="build,clean"><ant target="clean"/><ant target="build"/></target>
</project>

3 使用properties文件配置属性,和公共xml

  3.1 创建all.properties设置变量

src1=D:\\software\\ant\\test\\test3\\src1
src2=D:\\software\\ant\\test\\test3\\src2
src3=D:\\software\\ant\\test\\test3\\src3

  3.2 创建include.xml,设置公共的变量和target

<?xml version="1.0" encoding="UTF-8"?>
<property name="src" value="src"/>
<property name="dest" value="classes"/>
<target name="test"><ant target="run"/>
</target>

  3.3 在总build中使用使用all.properties设置变量

<?xml version="1.0" encoding="UTF-8"?>
<project name="main" default="build" basedir="."><!-- 读取配置文件中的变量 --><property file="all.properties"/><property name="bin" value="${basedir}\bin"/><target name="init"><mkdir dir="${bin}"/></target><target name="run"><ant dir="${src1}" target="run"/><ant dir="${src2}" target="run"/><ant dir="${src3}" target="run"/></target><target name="clean"><ant dir="${src1}" target="clean"/><ant dir="${src2}" target="clean"/><ant dir="${src3}" target="clean"/></target><target name="call"><ant dir="${src1}" target="build"/><ant dir="${src2}" target="build"/><ant dir="${src3}" target="build"/></target><target name="build" depends="init,call"><copy todir="${bin}"><fileset dir="${src1}"><include name="*.jar"/></fileset><fileset dir="${src2}"><include name="*.jar"/></fileset><fileset dir="${src3}"><include name="*.jar"/></fileset></copy></target><target name="rebuild" depends="build,clean"><ant target="clean"/><ant target="build"/></target><target name="test"><ant dir="${src1}" target="test"/><ant dir="${src2}" target="test"/><ant dir="${src3}" target="test"/></target>
</project>

  3.4 在每个小组的build.xml中引用include.xml的变量和target

<?xml version="1.0" encoding="UTF-8" ?><!-- 引入外部的xml,在本xml中就可以使用引入的xml中的变量和target -->
<!DOCTYPE project[
<!ENTITY share-variable SYSTEM "file:../include.xml">
]><project name="HelloWorld" default="run" basedir="."><!-- 使用变量 -->&share-variable;<!-- 这两个变量在公用的xml中已经定义,使用&share-variable就可直接使用<property name="src" value="src"/><property name="dest" value="classes"/>--><property name="hello_jar" value="hello1.jar"/><target name="init"><mkdir dir="${dest}"/></target><target name="compile" depends="init"><javac srcdir="${src}" destdir="${dest}"/></target><target name="build" depends="compile"><jar jarfile="${hello_jar}" basedir="${dest}"/></target><target name="run" depends="build"><java classname="test.HelloWorld" classpath="${hello_jar}"/></target><target name="clean"><delete dir="${dest}"/><delete file="${hello_jar}"/></target><target name="rerun" depends="clean,run"><ant target="clean"/><ant target="run"/></target>
</project>

 

转载于:https://www.cnblogs.com/lifeone/p/7851785.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习之tensorflow (一) XORerr1 -修改

博客背景是学习《深度学习之TensorFlow》这本书籍中的作业&#xff0c;修改第七章的作业&#xff0c;把XOR-异或的错误代码修改为正确的。 主要修改有三个地方&#xff1a; 隐藏层一的运算从sigmoid修改为add运算&#xff1b;输出层的运算修改为sigmoid&#xff08;原来是什么…

可调用对象

# -*- coding: utf-8 -*- #python 27 #xiaodeng #可调用对象 #http://www.cnpythoner.com/post/306.html#定义&#xff1a; #许多python对象都是可调用的&#xff0c;即&#xff1a;任何通过函数操作符()来调用的对象。 #callable()是一个布尔函数&#xff0c;确定一个对象是否…

Ansys ——自定义不规则形状梁截面

目录 导读: 1、问题描述 2.CAD绘制截面,导出.sat文件格式 (1)在三维建模工作空间下绘制截面

Language-Directed Hardware Design for Network Performance Monitoring——Marple

网络监控困难 1、仅仅通过去增加特定的监控功能到交换机是不能满足运营商不断变化的需求的。&#xff08;交换机需要支持网络性能问题的表达语言&#xff09;2、他们缺乏对网络深处的性能问题进行本地化的可见性&#xff0c;间接推断网络问题的原因3、当前的交换机监控并没有提…

深度学习基础(四)优化函数(梯度下降函数)

梯度下降函数也就是优化函数&#xff0c;在神经网络训练过程最重要的函数。重要程度类似于调校对于汽车的重要性&#xff0c;搭建模型和参数设置等操作“造好了一辆汽车”&#xff0c;优化函数“调校”。因为汽车最终的操控性和加速性能等指标很大程度取决于调校&#xff0c;调…

ANSYS 简支梁的约束

在ansys中&#xff0c;梁的定义都是通过梁截面和轴线进行定义的&#xff0c;不同的梁的区别在ansys中的体现仅在于约束的处理上不同 1.简支梁的约束 假设简支梁的梁轴线是x轴&#xff0c;可以绕z轴弯曲&#xff0c;则简支梁的约束&#xff1a; 起始点&#xff1a;X、Y、Z、RO…

js 实现 复制 功能 (zeroclipboard)

#复制功能因访问权限和安全问题&#xff0c; 被浏览器禁了# 我要实现的功能&#xff1a;点击复制按钮&#xff0c;复制浏览器的当前页面地址&#xff0c;加上用户选择的参数&#xff08;用户查找过滤&#xff09;&#xff0c;直接将该链接发给别人&#xff0c;点击打开就是对应…

解决 kindle 书籍字体颜色偏淡问题的方法

现象 通过Markdown转换而来的mobi格式书籍都有一个大问题&#xff1a;字体偏淡&#xff0c;放在kindle上看对比度很差。 原因分析&#xff1a; 导致这种问题的原因&#xff0c;可能是因为在制作电子书的过程中&#xff0c;这些内容是被标注了彩色或灰色。这可能更适合全彩屏幕的…

车智汇模式系统技术开发数据

用户思维&#xff1a;对经营者和消费者的理解&#xff0c;以用户为中心&#xff0c;学会换位思考&#xff0c;发掘用户的真正想法和需求。以前是生产什么就卖什么(自己制作卖点)&#xff0c;现在是了解用户需要什么才做什么(实现卖点)。车智汇是一款以"云平台智能终端&quo…

深度学习基础(二)激活函数

激活函数&#xff08;也被称为激励函数&#xff09;的意义就是加入非线性因素&#xff0c;使得神经网络具有非线性表达的能力。其必要条件是激活函数的输入和输出都是可微的&#xff0c;因为神经网络要求处处可微。(可微是指函数的各个方向可导&#xff0c;可微大于等于可导) …

ANSYS——固定斜度的变截面变截面的定义、自由耦合和变截面的定义

目录 1.变截面梁 2.自由度耦合 3.变截面的ANSYS GUI操作 4.疑问 以下两个定义转自:http://wenku.baidu.com/view/04e43ebbfd0a79563c1e722d.html 上述文章中还包含了一个实例,可以参考

Please ensure that adb is correctly located at……问题解决方案

启动android模拟器时.有时会报The connection to adb is down, and a severe error has occured.的错误.在网友说在任务管理器上把所有adb.exe关闭掉.重启eclipse.但试过不管用.所以在外国网站上找到一种可行的方法:1.先把eclipse关闭.2.在管理器转到你的android SDK 的platfor…

2016.8.23

1 贴吧里看到一个关于因为游戏闹翻的故事&#xff0c;大致情况是这样的&#xff1a;某女初中的时候有个闺蜜。后来此人因为抑郁之类的精神问题被送到医院&#xff0c;这让女主很苦闷且脆弱又孤单&#xff0c;这时候她的闺蜜去医院看望她&#xff0c;然后女主就喜欢上了这位闺蜜…

[Spring]01_环境配置

1.1 Spring jar包下载 &#xff08;1&#xff09;进入官网http://repo.spring.io &#xff08;2&#xff09;在资源库界面点击Artifacts标签&#xff0c;然后点击libs-release-local&#xff0c;展开后依次点击org -> springframework -> spring。 然后&#xff0c;就可…

ANSYS——常见梁的后处理方法(弯曲应力、弯矩、轴力等的显示)

目录 a. 显示变形 b. 显示当量应力 c. 显示弯曲应力 d. 支反力显示 e. 将图形存入文件

深度学习基础(三)loss函数

loss函数&#xff0c;即损失函数&#xff0c;是决定网络学习质量的关键。若网络结构不变的前提下&#xff0c;损失函数选择不当会导致模型精度差等后果。若有错误&#xff0c;敬请指正&#xff0c;Thank you&#xff01; 目录 一、loss函数定义 二、常见的loss算法种类 1.M…

C#中DataTable中的Compute方法使用收集

Compute函数的参数就两个&#xff1a;Expression&#xff0c;和Filter。 Expresstion是计算表达式&#xff0c;关于Expression的详细内容请看这里“http://msdn2.microsoft.com/zh-cn/library/system.data.datacolumn.expression(VS.80).aspx”。而Filter则是条件过滤器&#x…

Lazy延迟实例对象

懒对象&#xff0c;实现延迟实例对象。 转载于:https://www.cnblogs.com/yj2010/p/5798622.html

Shift键关闭大小写

同事说他的大写开了之后无法关闭&#xff0c;我检查了下&#xff0c;的确是&#xff0c;非常奇怪&#xff0c;然后我不小心按了下下面的Shift键&#xff0c;大写指示灯灭了&#xff0c;我立即明白是怎么回事&#xff0c;原来是文字和语言设置里的Key setting改了&#xff0c;如…

ANSYS——如何选择合适的单元类型

目录 1.该选杆单元(Link)还是梁单元(Beam)? 2.对于薄壁结构,是选实体单元还是壳单元?