ant 自定义taskdef的工作目录

上次同事在用ant执行多层目录的测试用例的时候遇到了一些问题,也就是自定义的taskdef的工作目录总是在开始执行ant的那个目录,而有一些地方用到了当前目录,因此很多测试用命的代码出现了“找不到自定义taskdef所输出的文件”这类错误。因为自己当时也没有搞那一块,也就没有深入去调查,当时同事改用指定绝对路径的方法去解决了问题,虽然看上去不是那么的优雅。

今天回来没有什么事做,特意去调查了一下这个问题,很可惜啊,并没有直接的设置参数的方式去改变自定义task的工作目录。但是在自定义的taskdef类中,采用getLocation方法可以得到所在的build.xml的路径,去掉最后的文件句也就是正在执行的用例的build.xml所在的目录了。

原文地址:https://www.cnblogs.com/mosmith/p/4795647.html