有用的Ant构建标签

问题:

如何在ant文件中执行以下任务?

  1. 制作zip文件。
  2. 运行命令。
  3. 将文件复制到远程计算机。
  4. 在远程Linux机器上运行命令。
  5. 打开输入框并响应输入值。
  6. 拨打蚂蚁电话。

答案:

1.制作zip文件:

以下是在ant中制作zip文件的xml:

<zip destfile='${destination.folder}/zipName.zip'><fileset dir= '${Source.folder}' />
</zip>

在此,“ destfile”是创建的zip文件的名称和位置。 在文件集标记中,dir属性用于指定将压缩所有文件的源文件夹格式。

2.运行命令:

在这里,我将向您展示如何在ant文件中启动tomcat,以演示如何在ant中运行命令。 以下是为此的xml:

<exec dir='${tomcat.home}/bin' executable='cmd' os='Windows XP'><arg line='/c startup.bat'/>
</exec>

这里的“ $ {tomcat.home}”是tomcat文件夹的路径。 该命令在“ line”属性的“ <arg>”标签中给出。

注意:要运行以下命令,您将需要JSCH jar 。

3.将文件复制到远程计算机:

如果远程计算机位于您的局域网中,并且您可以直接以\\ remote_machine \ path对其进行访问,则可以使用简单的复制命令,如下所示:

<copy file='${source.folder.file} ' todir='\\remote\path'>
</copy>

要在支持SCP的远程计算机上复制文件,请使用以下标记:

<scp file='${source.folder.file} ' todir='${remote.user}@${remote.host}:${remote.path.where.to.do.copy}'password='${remote.password}' trust='true'>
</scp>

在以上两个命令中,“文件”是要复制其路径的源文件。 “ todir”是要在其中复制文件的远程计算机文件夹路径。

4.在远程计算机上运行命令:

您可以使用以下标记在远程Linux机器上执行命令。

<sshexec host='${remote.host}' username='${remote.username}' password='${remote.password}'command='${command.to.run}' trust='true' />

例如,要启动tomcat,请使用以下标记:

<sshexec host='${remote.host}' username='${remote.user}' password='${remote.password}'command='sh ${tomcat.home}/startup.sh' trust='true' />

5.打开一个输入框并响应输入值

要打开输入对话框,请使用以下标记:

<input message='Enter id: ' addproperty='my.id'>
</input>

“ addproperty”中的“ my.id”是保存输入值的变量名。 现在检查用户是否拒绝在输入中输入值:

<condition property='do.abort'><equals arg1='n' arg2='${my.id}'/>
</condition>
<fail if='do.abort'>Build aborted by user.</fail>

如果用户输入值并按OK,则可以将输入的值称为“ $ {my.id}”。

6.拨打蚂蚁电话

<antcall target='targetName'>
</antcall>

这里的“目标”是将要执行的目标的名称。

注意:在以上示例中,所有以“ $ {”开头和以“}”结尾的值都是变量,您可能必须在其中输入适当的值才能成功运行它们。

参考: harryjoy博客上来自JCG合作伙伴 Harsh Raval的有用的Ant构建标签 。


翻译自: https://www.javacodegeeks.com/2012/09/useful-ant-build-tags.html

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

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

相关文章

poj-2955-Brackets-区间DP

poj-2955-Brackets-区间DP BracketsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 9014 Accepted: 4829Description We give the following inductive definition of a “regular brackets” sequence: the empty sequence is a regular brackets sequence,if s …

Python调用(运行)外部程序

在Python中可以方便地使用os模块运行其他的脚本或者程序&#xff0c;这样就可以在脚本中直接使用其他脚本&#xff0c;或者程序提供的功能&#xff0c;而不必再次编写实现该功能的代码。为了更好地控制运行的进程&#xff0c;可以使用win32process模块中的函数。如果想进一步控…

Java中已检查和未检查的异常

Java有两种类型的异常-已检查和未检查。 简而言之&#xff0c;选中的是指开发人员可以从异常中合理恢复的情况&#xff0c;而未选中的异常是无法处理的编程错误。 本文介绍了何时使用哪种。 但这不是那么简单–受检查的异常使代码变得“丑陋”。 它们迫使开发人员编写try / cat…

CCF - 201403-3 - 命令行选项

问题描述 试题编号&#xff1a;201403-3试题名称&#xff1a;命令行选项时间限制&#xff1a;1.0s内存限制&#xff1a;256.0MB问题描述&#xff1a; 问题描述请你写一个命令行分析程序,用以分析给定的命令行里包含哪些选项。每个命令行由若干个字符串组成,它们之间恰好由一个空…

java 枚举 values_JAVA 枚举运用一 values方法

importjava.lang.reflect.Method;importjava.lang.reflect.Type;importjava.util.Set;import java.util.*;public classEnumJavaClass {public enumEnumClass{One("参数变量枚举一"),Two("参数变量枚举二"),Three("参数变量枚举三");privateStri…

telnet测试端口是否正常打开

点击计算机的开始菜单--》运行 &#xff0c;输入CMD命令&#xff0c;然后确定。打开cmd命令行。 输入telnet测试端口命令&#xff1a; telnet IP 端口 或者 telnet 域名 端口 回车 如果端口关闭或者无法连接&#xff0c;则显示不能打开到主机的链接&#xff0c;链接失败 端口…

Linux历史,安装,分区,版本

Linux 历史 1970年是 UNIX元年&#xff0c;这一年 Kenneth Lane Thompson 和 Dennis Ritchie 合作编写了UNIX系统。Stallman 发起了GNU 计划&#xff0c;他本人开发了Emacs, GCC, GDB.Minix&#xff1a;教学用的类UNIX系统&#xff0c;由于UNIX是收费的且价格昂贵&#xff0c;因…

放弃Eclipse Juno

在上一个博客中&#xff0c;我发布了有关Eclipse 4.2 Juno设置的信息。 万一我需要重新安装其他东西&#xff0c;也可以作为参考。 当时我没有谈论的是我与Juno共同遇到的问题。 我以为这是我自己的安装程序&#xff0c;很麻烦&#xff0c;但是此后并没有太大改善。 我遇到的主…

Java instead of 用法_我又不是你的谁--java instanceof操作符用法揭秘

背景故事《曾经最美》是朱铭捷演唱的一首歌曲&#xff0c;由陈佳明填词&#xff0c;叶良俊谱曲&#xff0c;是电视剧《水晶之恋》的主题曲。歌曲时长4分28秒。 歌曲歌词&#xff1a;看不穿你的眼睛藏有多少悲和喜像冰雪细腻又如此透明仿佛片刻就要老去整个城市的孤寂不止一个你…

3.26

http://codeforces.com/gym/101196/attachments A题 B题 题意&#xff1a;一群人玩桌上足球(>4人)&#xff0c;分成黑白两队&#xff0c;每队有进攻和防守两名玩家&#xff0c;如果有一方失败则失败方的防守坐到等候席的结尾、进攻被流放到防守区再上来一个人作为进攻方。而…

scala akka通信机制

https://www.2cto.com/kf/201701/587514.html转载于:https://www.cnblogs.com/rocky-AGE-24/p/7542874.html

JUnit通过失败测试案例

为什么要建立一种预期测试失败的机制&#xff1f; 有一段时间&#xff0c;人们会希望并期望JUnit Test案例失败。 尽管这种情况很少见&#xff0c;但确实发生了。 我需要检测JUnit测试何时失败&#xff0c;然后&#xff08;如果期望的话&#xff09;通过而不是失败。 具体情况是…

CentOS6.5安装MySQL5.7详细教程

CentOS6.5安装MySQL5.7详细教程 注&#xff1a;文中所写的安装过程均在CentOS6.5 x86下通过测试 主要参考博文&#xff1a; https://segmentfault.com/a/1190000003049498 http://www.th7.cn/db/mysql/201601/175073.shtml 1.检测系统是否已经安装过mysql或其依赖&#xff0c;若…

cmake 查看编译命令,以及在vscode中如何使用cmke

通过设置如下配置选项&#xff0c;可以生成compile_commands.json 文件&#xff0c;记录使用的编译命令 set(CMAKE_EXPORT_COMPILE_COMMANDS ON)获得现有模块列表 cmake --help-module-list查看命令文档 cmake --help-command find_file查看模块的详细信息 cmake --help-mo…

php学习八:封装

一&#xff1a;在php中&#xff0c;用class关键字来创建一个类&#xff0c;即进行封装&#xff1b;在类里面有成员属性和方法行为组成&#xff1a; 1.成员属性:用关键字var来声明,可以给初始值也可以不给;现在var废弃&#xff0c;用public来声明&#xff0c;public为共有属性&a…

纯Java JavaFX 2.0菜单

在有关JavaFX的最新文章中 &#xff0c;我集中讨论了不使用JavaFX 1.x的JavaFXScript和不使用JavaFX 2.0的新FXML来使用JavaFX 2.0的新Java API 。 所有这些示例均已使用标准Java编译器进行了编译&#xff0c;并使用标准Java启动 器执行。 在本文中&#xff0c;我将继续演示使用…

设置QtreeWidget水平滚动条

转载请注明出处&#xff1a;http://www.cnblogs.com/dachen408/p/7552603.html //设置treewidget水平滚动条 ui.treeWidget->header()->setSectionResizeMode(QHeaderView::ResizeToContents);ui.treeWidget->header()->setStretchLastSection(false);转载于:https…

java 序列化 uid,Java中的序列化版本uid

How is Serialization id stored in the instance of the object ?The Serialization id we declare in Java is static field;and static fields are not serialized.There should be some way to store the static final field then. How does java do it ?解决方案The ser…

HTML5本地存储

什么是Web Storage Web Storage是HTML5里面引入的一个类似于cookie的本地存储功能&#xff0c;可以用于客户端的本地存储&#xff0c;其相对于cookie来说有以下几点优势&#xff1a; 存储空间大&#xff1a;cookie只有4KB的存储空间&#xff0c;而Web Storage在官方建议中为每个…

番石榴秒表

番石榴的秒表是番石榴第10版的另一个新番石榴类&#xff08;作为Optional &#xff0c;这是另一篇近期文章的主题&#xff09;。 顾名思义&#xff0c;这个简单的类提供了一种方便地测量两个代码点之间经过的时间的方法。 与使用System.currentTimeMillis&#xff08;&#xff…