`

Ant与批处理(win环境)学习笔记(2)

阅读更多
在《Ant与批处理(win环境)学习笔记》中学习了Ant的一些基础知识,这期继续深入学习
——————————Ant常用task————————————————————————
1、使用classPath
  
   <target>
      <javac>
        <classpath refid="project.class.path"/>
      </javac>
   </target>

2、设置classpath
<classpath id="project.class.path">
      <pathelement path="${classpath}"/>
      <fileset dir="lib">
         <include name="**/*.jar"/>
      </fileset>
      <pathelement location="classes"/>
        <dirset dir="build">
          <include name="apps/**/classes"/>
          <exclude name="apps/**/*Test*"/>
        </dirset>
        <filelist refid="xxx"/>
   </classpath>


3、 输出信息
输出文本信息使用echo;  输出xml使用echoxml; 引入文件使用import

4、 拷贝文件 
<copy file="myfile.txt" tofile="yourfile.txt"/>
copy的属性有:
file、 dir、fileset等;
copydir:拷贝目录

5、 删除文件
<delete file="xxx"/>
delete属性有file、dir
deletetree:删除文件目录树

6、 剪切文件
<move todir="xxx">
  //被剪切的东西
</move>

7、 重命名
<rename src="xxx" dest="yyyy"/>

8、建立临时文件
<tempfile property="xxx" destDir="yyy" suff=".xml"/>

9、 touch的使用
<touch file="myfile" datetime="xxx"/>

10、 Condition的使用[color=blue][/color]
有<and>、<or>、<not>等tag,示例如下:
 <condition property="isLinuxButNotRedHat">
      <and>
         <os family="Linux"/>
         <not>
          <os family="RedHat"/>
         </not>
      </and>
   </condition>


11、 替换replace
replace、replacefilter

12、 调用chmod
示例:
   <chmod perm="go-rwx" type="file">
      <fileset dir="/web">
        <include name="xxx"/>
        <exclude name="yyy"/>
      </fileset>
   </chmod>


13、 设置Property
有如下一些情况:
设置属性name-value;读取属性文件中的配置:<property file="xxx.properties"/>
读取网络中的property-set:
<property url="xxx..."/>;读取环境变量:<property environmen="xxx"/>

13、 建立目录
<mkdir dir="xxx"/>

14、 打jar包
<jar destfile="${dist}" basedir="xxx"/>

15、 打ear包
<ear destfile="build/myapp.ear" appxml="src/metadata/application.xm">
   <fileset> dir="build" includes="*.jar, *.war"/>
</ear>

16、 执行程序
<target name="help">
   <exec exectuable="cmd">
      <arg value="/c"/>
      <arg value="ant.bat"/>
      <arg value="-p"/>
   </exec>
</target>

17、 运行jar包
   <java classname="test.Main">
      <arg value="-h"/>
      <classpath>
         <pathelement location="dist/test.jar"/>
         <pathelement path="/xxxx/yyy.jar"/>
      </classpath>
   </java>

疑问:
location与path的区别?
path可以用于指向存在多个文件的位置,而location只能指向单个的文件或目录。另外path可以被设定id,供其它的path或classpath引用。如:<path id="main-classpath">,而location则没有。

18、 制作Javadoc
... ...

19、 定义一个新的task类库
   <taskdef name="myjavadoc" classname="xxxxx"/>

20、 运行sql
   
   <sql>
     driver="xxxx"
     url="yyy"
     userid="sa"
     password="123456">
     insert into table test_table values(1,2,3);
     truncate table some_other_table;
   </sql>


21、 Filter的使用
<filter token="xxx" value="yyy"/>

22、还有一些常用的task如发送邮件、解压缩
  例子略去... ...

23、 antcall
调用target,DoSomethingelse:
 <target name=default">
     <antcall target="doSomethingelse">
       <param name="param1" value="value"/>
     </antcall>
     <target name="doSomethingelse">
       <echo message="Hello World"/>
     </target>
   </target>


在target中还可以使用if...else类的控制流程

————————Ant中使用CVS的示例————————————
<?xml version="1.0" encoding="UTF-8"?>
   <project>
      <project name="cvsroot" value=":pserver:yaoxxxx"/>
      <project name="basedir" value="xxx"/>
      <project name="cvs.password" value=":yyyy"/>
      <project name="cvs.passfile" value="zzzz"/>
      <target name="initpass">
         <cvspass cvsroot="${cvsroot}" password="${cvs.password}" passfile="${cvs.passfile}"/>
      </target>
      <target name="checkout" depends="initpass">
         <cvs cvsroot="${cvsroot}" command="checkout" cvsrsh="ssh" package="myproject"
         dese="${distdir}" passfile="${cvs.passfile}"/>
      </target>
   </project>
</xml>


Ant的学习就此告一段落,平时多看看开源项目的build.xml,翻翻ant docs。这是一个积累的过程... ... 我积累呀我积累呀!!!

——————————家庭作业
1、 使用Eclipse集成Ant
2、 使用Ant构建tomcat的源码
3、 使用Ant结合Junit进行自动化测试
分享到:
评论

相关推荐

    Ant与批处理(win环境)学习3

    NULL 博文链接:https://sunshineyao.iteye.com/blog/996480

    Ant和批处理脚本.rar

    然而,批处理脚本的缺点在于它的功能相对有限,不适合复杂的跨平台任务,且与现代开发环境的集成不如Ant等专业构建工具。 将Ant和批处理脚本结合使用,可以在Windows环境中实现更强大的自动化流程。例如,Ant可以...

    利用ant,批处理一键打包,供大家参考

    利用ant进行批处理打包,一键打包,因项目不同,我的批处理和大家的肯定不同,大家可以借鉴、参考。

    unity3d android 使用ant打包批处理.

    标题"unity3d android 使用ant打包批处理"指的是使用Ant工具进行Unity3D Android项目的批量打包流程。这个流程旨在提高效率,尤其是在持续集成或频繁发布更新时,可以避免手动操作的繁琐和错误。 首先,你需要确保...

    Ant 的 (批处理)Bat 实现

    本篇将深入探讨如何利用批处理脚本(Batch Script,通常以.bat为扩展名)来实现Ant的部分功能,以及这种实现方式的优势与应用场景。 首先,Ant的核心在于XML格式的构建文件build.xml,它定义了构建过程中的任务和目标...

    Ant 批处理 Unicode转码

    2. 使用Ant的任务和过滤器,如`&lt;copy&gt;`、`&lt;filterchain&gt;`和`&lt;iconv&gt;`。 3. 添加额外的Ant任务定义库,如`ant-contrib`。 4. 针对不同的需求,选择合适的编码转换方法,如使用Java I/O类或自定义Ant任务。 在实际...

    Ant打包编译部署工具学习笔记2(附件中含有测试项目)

    在"Ant打包编译部署工具学习笔记2"中,我们可以预期博主分享了关于如何利用Ant进行更复杂的构建操作,例如集成测试、优化和打包。这可能包括如何配置build.xml文件,添加自定义任务,以及如何处理依赖关系。由于没有...

    ant_学习笔记

    ### ant学习笔记:深入了解ant构建工具 #### 引言 `ant`,作为一款源自动网络的学习笔记,主要探讨了Apache Ant这一强大的构建工具。Apache Ant是一款开源的、跨平台的构建工具,专为Java应用程序设计,旨在简化并...

    Ant 1.9.1 学习笔记

    Ant 1.9.1是Ant的一个版本,学习笔记通常记录了使用该工具的基本操作和配置方法。 ### Ant的下载和安装 要使用Ant,首先需要下载并安装。在Windows系统中,通常需要配置环境变量以便于命令行中使用Ant命令。ANT_...

    ant个人学习笔记和简单示例

    总的来说,这个“ant个人学习笔记和简单示例”应该能帮助你掌握Ant的基本用法,理解构建过程的自动化,以及如何编写和维护自己的构建文件。通过学习和实践其中的示例,你将能够熟练地运用Ant来构建和管理Java项目,...

    ant 学习 笔记 一个简单的java 编译部署实例

    根据提供的文件信息,这里将深入解析“ant学习笔记:一个简单的java编译部署实例”,涵盖标题、描述、标签以及部分内容中提及的关键知识点。 ### Apache Ant简介 Apache Ant是一款开源的Java环境下的自动化构建...

    Ant构建工具学习笔记

    《Ant构建工具学习指南》 Ant,作为Java领域的一个强大构建工具,它的主要作用在于将复杂的项目构建过程规范化、自动化,使得开发者能够更专注于代码的编写而非构建流程。本文将深入探讨Ant的基本概念、安装配置、...

    Jenkins+SVN+Ant持续集成环境配置笔记

    ### Jenkins+SVN+Ant持续集成环境配置笔记 #### 一、引言 随着软件开发项目的日益复杂化,持续集成(Continuous Integration, CI)已成为现代软件工程中的一个重要组成部分。通过持续集成,团队能够频繁地集成代码...

    apache-ant-1.6.5-bin.zip_ ant 1.6.5_ant_ant-1.6.5_apache ant win

    2. **Ant 1.6.5 版本** - Ant 1.6.5是2005年发布的一个稳定版本,尽管现在已经有了更新的版本,但这个版本在当时是非常流行的。 - 这个版本可能包含了一些特定的修复和改进,具体的详细信息需要查看"readme.txt...

    ant的学习笔记.doc

    ### ant的学习笔记知识点详解 #### 一、Ant的作用与特性 Ant是一款强大的自动化构建工具,主要应用于Java项目,能够高效地处理项目的编译、打包、测试等任务。它采用XML格式编写构建脚本,这使得Ant具有良好的跨...

    ant 构建环境使用

    Apache Ant是一种广泛使用的Java构建工具,它以XML为基础来描述构建过程,使得构建脚本具有良好...在实际工作中,Ant通常与版本控制系统(如Git)、持续集成工具(如Jenkins)等配合使用,构建更复杂的自动化构建流程。

    Jenkins+SVN+Ant持续集成环境配置笔记.pdf

    首先,Eclipse与SVN的集成是持续集成环境搭建的关键第一步。通过Eclipse提交代码到SVN,确保所有开发人员的代码更改都存储在同一个集中式仓库中,便于管理。在Eclipse中集成SVN通常需要借助于外部插件,比如...

    xml_批处理学习 xml_批处理学习

    XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件、文档存储等场景。...在实际开发中,XML与批处理的结合广泛应用于持续集成、自动化测试、数据迁移等多个领域。

    Ant学习笔记

    **Ant学习笔记** Ant是一个基于Java的构建工具,它的全称是Another Neat Tool,主要应用于Java项目的构建。Ant的设计理念是通过XML配置文件来定义构建过程,而非依赖于特定平台的shell命令。每个构建任务是由实现了...

Global site tag (gtag.js) - Google Analytics