重点:

Ant的属性介绍:
  <property name="build.dir" value="build"/>
注意:一般对于常量都会定义成为属性。

<property name="build.classes" value="${build.dir}/class" />

注意:对于/ \的问题,在widows和liunx中对于斜杠的支持是不一样的。
  windows 中为 \ linux中为:\

对于value而言,是不会根据操作系统来自己变动的,你写成为:
  build/class 则会去这样找找build/class
  build\class 则会去这样找build\class

第二点:value是相对路径,即使基于当前文件的路径来继续。
   
    可以测试,用echo
    <echo>${build.class}</echo>
    
输出为:build\class

此时,可以用location 这个属性,自动会更具操作系统来转化识别。

<property name="build.classes" location="${build.dir}/class" />
    
 使用属性定义相应的路径的时候,一定要使用location,而不要使用value.
 
  location :是绝对路径。

总结:1)值用value,路径用location
      2)路径不建议在外部文件中定义,因为在外部文件中,就不会设置location的值了,相当于value了。
      3)环境变量引入方法:
      <property enviroment="env" />
             然后使用env

<?xml version="1.0" encoding="UTF-8"?>
<project default="execute"><property name="build.dir" location="build"></property><!--使用属性定义相应的路径时,一定使用location而不要使用value--><property name="build.classes" location="${build.dir}\classes"></property><property name="build.src" location="${build.dir}/src"></property><property name="build.lib.dir" location="${build.dir}/dist"></property><!--<property name="execute.class" value="ant.zttc.edu.cn.HelloWorld"/><property name="jar.name" value="hello.jar"></property>--><!--如果属性太多,可以将属性放置到一个外部文件中定义,之后进行引用特别注意:如果是路径不建议在外部文件中定义,因为此时就不会设置location的值--><property file="build.properties"></property><!--把环境变量中的参数到处到env这个变量中--><property environment="env"></property><target name="test"><echo>${ant.home}</echo><echo>${ant.version}</echo><echo>${env.CATALINA_HOME}</echo><echo>${env.OS}</echo></target><!--fileset可以设定一组文件集来进行操作,dir指明文件集要进行选择的路径,通过id可以指定这个文件的名称,在使用的时候进行直接的引入include和exclude可以设定包含返回和排除范围**/*.*所有目录中的所有文件--><fileset id="src.path" dir="src"><include name="**/*.*"/><!--<exclude name="**/*.java"/>--></fileset><target name="init"><delete dir="${build.dir}"></delete><mkdir dir="${build.dir}"/><mkdir dir="${build.src}"/><mkdir dir="${build.classes}"/><mkdir dir="${build.lib.dir}"/></target><target name="copySrc" depends="init"><copy todir="${build.src}"><fileset refid="src.path"></fileset></copy></target><target name="compile" depends="init"><javac destdir="${build.classes}" srcdir="src"></javac></target><target name="jar" depends="compile"><jar destfile="${build.lib.dir}/${jar.name}" basedir="${build.classes}"><manifest><attribute name="Main-Class" value="${execute.class}"/><attribute name="Build-By" value="Konghao"/></manifest></jar>    </target><target name="execute" depends="jar,copySrc"><echo>基于类路径的classname来完成执行</echo><java classname="${execute.class}" classpath="${build.classes}"><arg value="张三"/><arg value="李四"/><arg value="王五"/></java><echo>基于jar文件执行</echo><java jar="${build.lib.dir}/${jar.name}" fork="true"><arg value="张三"/><arg value="李四"/><arg value="王五"/></java></target>
</project>

转载于:https://www.cnblogs.com/pony1223/p/3373183.html

Ant学习总结5(配合Ant视频8,9)相关推荐

  1. ant学习笔记之(ant执行命令的详细参数和Ant自带的系统属性)

    2019独角兽企业重金招聘Python工程师标准>>> 一:ant执行命令的详细参数 -buildfile<file>,-file<file>,-f<f ...

  2. ant java xml文件,ant 学习(2)-ant开发java程序,buile.xml文件分离

    用Ant 开发java 程序----以及将build.xml文件拆分 用Ant 开发java 程序,以HelloWord 为例 1> 本次实例的目录结构: c:\ant_test 主目录 --- ...

  3. Ant学习---第二节:Ant添加文件夹和文件夹集的使用

    一.创建 java 项目(Eclipse 中),结构图如下: 1.创建 .java 文件,代码如下: package com.learn.ant;public class HelloWorld {pu ...

  4. Ant学习---第一节:Ant安装和简单使用

    一.下载 ant 插件,路径如下: http://ant.apache.org/bindownload.cgi 二.安装 ant 插件,解压下载下来的 ant 插件,配置环境变量(最好系统环境变量), ...

  5. Java Ant 学习总结

    Java_Ant详解 http://www.cnblogs.com/huozhicheng/archive/2010/04/08/2533199.html 1,什么是ant ant是构建工具 2,什么 ...

  6. linux查ant路径,Linux下安装Ant

    前言 Apache Ant 是一个构建工具,可以将软件编译.测试.部署等步骤联系在一起完成自动化工作,比如可以利用Ant来执行Jmeter的 jmx 脚本,生成了 jtl 测试结果文件,接着再利用An ...

  7. 李沐老师在伯克利开新课了,深度学习教材已经开源,视频也会有的

    ↑ 点击上方[计算机视觉联盟]关注我们 栗子 发自 凹非寺  量子位 报道 | 公众号 QbitAI 李沐老师的新课,这个月就要在伯克利开讲了. 这是一门深度学习基础课,一周两节:每节课后,都会有课堂 ...

  8. 02-eclipse中构建ant项目和编译运行ant

    Eclipse中已经集成了Ant,我们可以直接在Eclipse中运行Ant. 1.用 Ant 来构建简单系统 新建一个 Java project, 命名为Hello Hello .java 文件内容 ...

  9. java ant教程_ant教程(三) ant入门

    一,构建ant环境 要使用ant首先要构建一个ant环境,步骤很简单: 1),安装jdk,设置JAVA_HOME ,PATH ,CLASS_PATH(这些应该是看这篇文章的人应该知道的) 2),下载a ...

  10. mac 下安装java, jmeter, ant, jenkins,使用jmeter+ant+jenkins 接口测试集成工具,发送html报告到邮箱中

    涉及到的参考文档,如果有侵权,可以告知,立即删除. 一.全部小工具的安装 1.mac下安装java,jmeter 参考文档:https://www.jianshu.com/p/bce9077d883c ...

最新文章

  1. 成为优秀Java程序员的10大技巧
  2. 【大数据-Hadoop】Presto
  3. 图解Android Studio 2.0安装步骤
  4. labuladong的算法小抄pdf_真漂亮!这份GitHub上爆火的算法面试笔记,助你圆满大厂梦...
  5. rabbitmq实战_RabbitMQ 实战系列之:消息传递
  6. 设计模式之十(外观模式)
  7. Android -- 获取摄像头帧数据解码
  8. Linux7改运行级别,Centos7.0修改系统运行级别
  9. python求平行四边形面积_python 已知平行四边形三个点,求第四个点的案例
  10. 人人都是程序员的节奏,Python 纳入高考
  11. 改善深层神经网络:超参数调整、正则化以及优化——2.9学习率衰减
  12. 55种数据可视化开源工具_8种出色的开源数据可视化工具
  13. 怎么看服务器连接记录_企业微信怎么查看打卡记录?自己和他人的都可以看
  14. 兼容ie6css怎么设置,CSS样式兼容IE6、IE7、IE8、FF火狐浏览器的方法
  15. 稳恒nb-iot模块WH-NB73 UDP透传和透传云使用说明
  16. ActiveMQ使用线程池实现消息的生产与消费
  17. IAR8.3安装步骤
  18. 计算机一级excel试题百度云,excel计算机一级试题.doc
  19. appbase_构建一个Chrome扩展程序,以使用Appbase进行实时价格跟踪
  20. 大数据为我们的生活带来了什么?

热门文章

  1. Python Django 生成随机字符串UUID的使用示例
  2. Linux wc指令统计文件信息
  3. RestTemplate配置使用OkHttpClient示例
  4. 基于 abp vNext 和 .NET Core 开发博客项目 - 集成Hangfire实现定时任务处理
  5. Quartz分布式实现
  6. int *ptr=(int *)(a+1)
  7. java写大文件_java实现超大文件的读写功能
  8. Oracle 原理:游标,显示游标、隐式游标、参照游标
  9. java序列化异常_Java|序列化异常StreamCorruptedException的解决方法
  10. java语法特点是什么意思_java的语法是什么意思