1

我的自定义 NAnt 任务依赖于某个文件集。它被认为是由任务执行的时间定义的。我想确保在使用之前定义文件集。我在想类似的东西property::exists('property')

我没有找到合适的功能。开箱即用NAnt(或NAntContrib )是否可行?

4

1 回答 1

1

通常,任务不应依赖于文件集或属性。相反,它们应该采用显式参数。可以使用 重用现有文件集refid,因此不会因此产生重新声明。示例语法:

<myTask><filesetParameter refid="compileUs"/><myTask>

如果未定义引用的文件集,NAnt 将抛出异常 - 这是正确的(预期的)行为,因为此时构建无法继续。

在您的任务中,该属性将定义如下:

[TaskName("myTask")]
public class MyTask : Task
{
  [TaskAttribute("filesetParameter", Required = true)]
  public FileSet FilesetParamter
  { get; set; }
}
于 2011-12-19T14:34:50.667 回答