有没有一种方法可以运行ant构建,从而获得构建的输出,但不需要实际执行?
也就是说,它将列出将提交给系统的所有命令,输出所有文件集的扩展,等等。
当我搜索"ant"one_answers"test"时,我会得到使用ant
运行测试的压倒性点击。关于实际测试ant构建文件,有什么建议吗?
看起来,您正在寻找一个"试运行"。
我在谷歌上搜索了一下,没有发现任何证据表明这是伪造的。
下面是对该功能的bugzilla请求,它稍微解释了一下:https://issues.apache.org/bugzilla/show_bug.cgi?id=35464
这在理论和实践中都是不可能的。理论上,如果不实际运行程序(基本上是停顿问题),就无法对程序进行有意义的测试。
在实践中,由于单个蚂蚁任务通常依赖于彼此的输出,这对绝大多数蚂蚁脚本来说是毫无意义的。他们中的大多数人编译一些源代码,并从类文件构建JAR——但是如果编译器没有实际运行,JAR的文件集会包含什么?
测试Ant脚本的正确方法是定期运行它,但要在测试系统上运行,可能是一个可以轻松恢复到原始状态的VM映像。
这里有一个问题:您有构建一堆东西的目标#1,然后有复制它的目标#2。
您在测试模式下运行Ant脚本,它会假装执行目标#1。现在到了目标#2,没有什么可复制的。目标#2应该返回什么?当你的ant目标中有if
和unless
子句时,事情会变得更加混乱。
我知道Make有一个命令行参数,它告诉它在不进行构建的情况下运行,但我从来没有发现它那么有用。也许这就是蚂蚁没有的原因。
Ant确实有一个-k
参数,告诉它在出现故障时继续运行。你可能会觉得这很有用。
正如Michael已经说过的,这就是测试系统(VM派上了用场)对的作用
从我的蚂蚁书签=>几年前,一些名为"虚拟蚂蚁"的工具已经发布,我从来没有尝试过。所以不要把它看作是一个提示,而是有人听说过
根据网站所说=
"有了虚拟Ant,您就不必再使用XML来创建或编辑Ant构建脚本了。在类似于Windows资源管理器的完全虚拟化环境中工作,并在虚拟文件系统上运行任务,实时查看它们的操作,而不会影响您的真实文件系统*。实际的Ant构建脚本是在后台生成的。"
嗯,听起来很好,很真实;-)
而不会影响您的真实文件系统。。可能是你想要的
他们提供30天的试用许可证,因此您不会损失任何金钱,只会有时间查看。