我刚刚开始第一次制作自定义 MSBuild 脚本。我看到有两个扩展功能的标准选项:MSBuild Extension Pack和 MSBuild Community Tasks .
我正在寻找一些关于这些之间有什么区别的指导,以及为什么我会使用一个而不是另一个,甚至两者都使用。我在 Bing 上用 Google 搜索过,但只见树木不见森林。任何指导表示赞赏。
最佳答案
我会插话的,只值2美分。有几件事——首先我不会把它们称为“标准”选项。两者都早于 MSBuild 4.0,内联任务和属性函数功能以及其中的许多任务都已经过时了。我已经编写了数千行 MSBuild,并且只需要几次来自这些库中的任何一个的任务。
它们的优点是它们非常模块化。您可以只挑选您需要的程序集和目标文件,并将它们 checkin 您的代码库,而不会“卡住”整个实现。有时我会从一个库中挑选一个任务,从另一个库中挑选一个任务,两者都在同一个版本中。我总是更喜欢使用简单的 MSBuild 4.0 功能而不是库中的某些功能。我对图书馆中的一些任务很感兴趣,但这种行为根本不是我需要的,所以我自己动手(这个任务想到了 zip 任务,因为我想控制分组压缩与源文件夹无关)。一旦您必须编写一个自定义任务,在同一个程序集中滚动另一个和另一个非常容易。
最后,我要说的是,它实际上与库无关,而是关于您对库中特定任务的非常具体的需求,使用您需要的东西,不要将您的构建与任何东西纠缠在一起那。
关于.net - MSBuild 扩展包与 MSBuild 社区任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6798161/