问题标签 [macrodef]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
467 浏览

ant - 如何将列表的每个元素分配给任务 Ant 的参数?

如何将已定义任务的参数值放入(值)列表中,而不必为每个参数值重写任务?

示例:我想避免必须重写三次相同的任务来回显三个不同的值(值 1、值 2、值 3):

谢谢

0 投票
1 回答
285 浏览

ant - 如何仅用一个替换对宏定义的三个调用?

如何替换对“myMacro”的三个调用:

只有一个调用会使用三个元素的列表:值 1、值 2、值 3

0 投票
1 回答
1653 浏览

javascript - 蚂蚁。覆盖属性。单个目标中的可选执行

我将发布一个我在其他地方看到过变体的问题,但我还没有完全看到我想出的答案。我随后会发布我的答案。

为了使用宏模块化我的构建脚本,我想将 updatetask 和我想要执行的任务(如果它不是最新的)放在同一个宏中。
我该怎么做 - 使用脚本标签是可以的 - 如果传入的唯一唯一属性是包含反斜杠的路径,并且我需要能够在不同的调用中将不同的值传递给脚本标签。当涉及反斜杠时,我需要避免字符串文字可能发生的任何问题。使用 unique 属性,我需要解决 ant 不可变属性行为,并解决通常使用 2 个目标来处理最新处理决策的 ant 模式,并且需要解决字符串文字中反斜杠的 javascript 处理。

0 投票
1 回答
529 浏览

ant - 使 ANT 宏更可重用

我有一个简单的宏(下面的简化版本)。目前它假设单个参数会有一个值,但是该参数可能有多个值。如何为该参数传递 0+ 值,以便宏在我需要为该参数传递 0+ 值的情况下可用,而不仅仅是单个值

0 投票
1 回答
6422 浏览

ant - Ant macrodef:有没有办法获取元素参数的内容?

我正在尝试在 Ant 中调试宏定义。我似乎找不到一种方法来显示作为元素发送的参数的内容。

示例运行:

所以我想我需要一种方法以某种方式将 的内容<elem />放入属性中(某些扩展的宏定义实现可能有这种方法),或者我需要一种<element-echo><elem /></element-echo>可以打印出您放入其中的任何 XML 树的方法。有谁知道其中任何一个的实现?当然,也欢迎任何第三种出乎意料的获取数据的方式。

0 投票
1 回答
213 浏览

build - Nant Build 脚本未定义问题

我在 nant 构建脚本中有以下代码:

但是,当我运行此代码时,我得到:文件集引用'@{service.references}'未定义。

我已经尝试过更改@符号的doller符号。不知道有什么区别?

提前感谢您提供的任何帮助或建议。

0 投票
2 回答
7679 浏览

ant - Ant:如何编写可选的嵌套元素

说我需要做类似的事情:

(真正的任务不是复制,我只是用它来说明这一点。)

Ant 会抱怨我的任务不支持嵌套<if>,这很公平。我一直在沿着这些思路思考:

我可以添加一个带有“元素”属性的宏定义,如下所示:

但这意味着调用者(目标)必须指定我想要避免的附加路径(如果许多目标调用此任务,他们将不得不重复additional-path元素中的文件集定义)。

如何对宏定义中的附加文件集进行编码以使 Ant 不会抱怨?

0 投票
5 回答
1974 浏览

ant - 在 ANT 中的 macrodef 中加入 7z

我一直在使用宏定义将一组文件复制到不同的位置和 FTP 服务器。但是复制似乎很慢,所以我想使用 7z 压缩包并将所有文件作为一个文件复制到 FTP 中。可以用7z完成吗?我的 amcrodef 低于它的工作原理:

0 投票
1 回答
1944 浏览

java - Ant macrodef 编译任务

我有一个我正在构建的编译器(和语言),通常这样调用:

我想在我的 ANT 构建文件中包含一个任务,该任务调用编译器来编译标准库和所有测试用例,但是将每个单独的编译器调用指定为一个<java>任务是很痛苦的:

我想创建某种可以将其简化为类似的 ANT 任务:

为此,我尝试了macrodef:

我在上面尝试了几种变体,但每个错误都带有类似的内容:/home/jwarner/code/nlang/nc/build.xml:55:java 不支持嵌套的“文件集”元素。

有没有办法在不扩展 ANT 本身的情况下做到这一点?或者,将 ant 任务添加到我的编译器是否相当容易?我对最终<nc>任务的语法并不十分挑剔。

0 投票
1 回答
13642 浏览

ant - 如何从另一个文件中调用宏定义

我在单独的文件中写了一个小宏定义:

宏定义.xml

我有第二个文件,我的主要构建文件:

构建.xml

正如您可能猜到的那样,这不起作用。错误消息类似于:

我找到的唯一可能的解决方案是在 macrodefs.xml 中提供一个额外的目标来转发 ant 调用。

是否有可能从另一个文件中调用宏定义?

提前致谢。