- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚完成了一个 ANT脚本(完美地完成工作)。但是有一个新的要求,脚本必须改变。目标是拥有名为 deploy-all.txt
的 ANT 部署文件。该文件看起来像
client1=name1=server1+server2=repositoryX
client2=name2=server1+server3=repositoryY
client3=name3=server2+server4=repositoryZ
将只有 1 个客户端,只有一个名称,从 1 到几台服务器,只有一个存储库和一种类型。
目标是什么:对于每一行,我都需要获取变量,以便我可以解析它们并执行任务。输出应该是
client=client1
name=name1
server=server1
server=server2 (could be more)
repository=repository1
必须为每一行解析这些参数。我确实有一个名为 GENERIC.WAR 的通用应用程序 - 它已经完成并且运行良好。现在应用程序需要需要构建/部署的单独插件。
该脚本将做什么:
a) copy generic GENERIC.WAR file to server1 and server2 with name scecified as client1 (SCP using scp task)
b) get svn repository based on repositoryX (svn update ant task)
c) get name and loop through existing code (using xmltask from checked out repository) to find right code to compile and zip it (have done it already)
所以我有我可以执行的所有任务,但不能将每个元素解析为每行的单独参数。我尝试了 for list
和 sequential
但到目前为止没有成功。我可以将所有参数分开,但只有 1 个参数。我无法将它作为多个参数获取,我可以遍历每一行并解析为其他任务。
因为这只是一个开始 - 我可以更改设计 - 例如使用 XML 而不是 TXT。它是否可行?如果可行,请您帮我想想如何做。
最佳答案
如果您首先以“命名空间”方式定义您的属性键,我认为您会发现更容易实现您需要的功能,例如
client.list=client1,client2
client1.name=client1
client1.server.list=server1,server2
client1.repository=repositoryX
client2.name=name2
client2.server.list=server1,server3
client2.repository=repositoryY
现在您拥有一组具有唯一键的属性,您可以在循环和/或宏定义中交叉引用它们。
这是一个如何使用它的例子:
<property file="deploy-all.txt"/>
<target name="test">
<for list="${client.list}" param="client">
<sequential>
<deploy client="@{client}"/>
</sequential>
</for>
</target>
<macrodef name="deploy">
<attribute name="client"/>
<sequential>
<echo>client: @{client}</echo>
<for list="${@{client}.server.list}" param="server">
<sequential>
<echo>server: @{server}</echo>
</sequential>
</for>
<echo>repository: ${@{client}.repository}</echo>
</sequential>
</macrodef>
输出:
test:
[echo] client: client1
[echo] server: server1
[echo] server: server2
[echo] repository: repositoryX
[echo] client: client2
[echo] server: server1
[echo] server: server3
[echo] repository: repositoryY
关于java - ANT:将字符串拆分为多个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29368189/
我有一个数组列表: ArrayList allText = new ArrayList(); 其内容是这样的: [Alabama - Montgomery, Alaska - Juneau, Ariz
我有一个 timestamp 格式的开始和结束时间。我想将它们分成多个时间段,例如 1 小时。 $t1 = strtotime('2010-05-06 12:00:00'); $t2 = strtot
我需要将 span10 分成 3 列,但我无法将它们排列起来。我应该在 span10 中添加一个 span12 还是使用 offset 还是??
我有一个时间序列。我想从早上 8 点到第二天早上 7:59 分成 24 小时的区 block 。我知道如何按日期分组,但我尝试过使用 TimeGroupers 和 DateOffsets 处理这个 8
我收到“街道号码邮政编码城市”形式的地址(作为字符串)。我想要做的是将街道和号码与邮政编码和城市分开。通常你可以按空格分割。但有些街道名称中也有空格,例如:“Emile Van Ermengemlaa
我有一个用户列表。其中一些用户处于第一状态,而其他用户处于第二状态。所以我想要的是将这个列表显示为首先,它按排序顺序显示存在 = 1 的用户,然后按排序顺序显示存在 = 2 的用户。这里的排序是根据用
我感觉我搜索了整个网络,但找不到一种方法将不同高度的 div 很好地划分为 3 列,就像 http://www.ing.nl 上那样 headertekst headerteksttesth
Bootstrap 3 按钮下拉菜单出现问题。你可以在这里看到我的两个例子: http://www.bootply.com/W1dLusilMk http://www.bootply.com/GGBv
我在 php 中执行以下操作 foreach($QuestionAsekd as $k => $v){ $grp_name = $v['NAME']; $groupValues[$gr
我找到了一种用pandas解析html的绝妙方法。我的数据格式有点奇怪(见下文)。我想将这些数据拆分为 2 个单独的数据帧。 注意每个单元格如何由,分隔...是否有任何真正有效的方法来分割所有这些单元
HTML 看起来像这样,但我不允许对其进行更改。我只能编写 CSS 将其变成 2 列。 Povezave www.behance.net www.kiberpipa.org www.o
假设我有以下数据框“A” utilization utilization_billable service 1
我需要将 2 个文本框拉伸(stretch)到 100% 的浏览器宽度,以及一个提交按钮。所有三个都应该在一行中,我试图拉伸(stretch)它但它没有发生......有什么想法吗? 代码: .sea
我是一名优秀的程序员,十分优秀!