我有一个包含许多SharePoint项目的解决方案。我想要做的是在TFS中配置一个构建,它将从我的解决方案中的一系列项目中创建一个WSP。我在构建定义中传递MSBuild Commandline Argument / p:IsPackaging = True。
例如,我可能有一个名为X的构建,它从项目1,2和3的输出构建一个WSP。然后,我可能有另一个名为Y的构建,它从项目构建一个WSP 2,5 ,7和8。
在构建定义的“Process”部分中,当我在“要构建的项目”下添加多个项目时,它会为每个项目输出一个WSP。这很棒,但我希望在构建中定义的所有项目都有一个WSP。
答案 0 :(得分:2)
通过使用功能设计器,您可以设计功能,使用Packaging Explorer可以定义WSP的功能。构建不负责定义它。这是你的项目。默认情况下,每个SharePoint项目都会生成一个wsp。 在TeamBuild中,您可以轻松定义应构建的项目。通过使用这些设置(项目中的Packaging Explorer和TFS 2010构建的Build Definition)的组合,您可以轻松地形成wsp并自动创建它。
正如您已经提到的,当BuildAgent持有构建SharePoint 2010项目的所有预先请求时,需要IsPackaging = True来保证创建wsp。