gpt4 book ai didi

java - 有没有办法概括 Apache ANT 目标?

转载 作者:IT老高 更新时间:2023-10-28 20:55:15 25 4
gpt4 key购买 nike

我们有一个 Apache ANT 脚本来构建我们的应用程序,然后将生成的 JAR 文件 checkin 版本控制(在本例中为 VSS)。但是,现在我们有一个更改要求我们为此项目构建 2 个 JAR 文件,然后将这两个文件都 checkin VSS。

将原始 JAR 文件检入 VSS 的当前目标通过某些属性发现 JAR 文件的名称。有没有一种简单的方法可以“概括”这个目标,以便我可以重用它来 checkin 任何名称的 JAR 文件?在普通语言中,这显然需要一个函数参数,但据我所知,在 ANT 中确实没有等效的概念。

最佳答案

我建议使用 macros优于 subant/antcall,因为我发现宏的主要优势是您可以完全控制传递给宏的属性(尤其是如果您想添加新属性)。

您只需从目标开始重构您的 Ant 脚本:

<target name="vss.check">
<vssadd localpath="D:\build\build.00012.zip"
comment="Added by automatic build"/>
</target>

创建宏(注意复制/粘贴和替换为@{file}):

<macrodef name="private-vssadd">
<attribute name="file"/>
<sequential>
<vssadd localpath="@{file}"
comment="Added by automatic build"/>
</sequential>
</macrodef>

并使用您的文件调用宏:

<target name="vss.check">
<private-vssadd file="D:\build\File1.zip"/>
<private-vssadd file="D:\build\File2.zip"/>
</target>

重构,“ Ant 方式”

关于java - 有没有办法概括 Apache ANT 目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com