我正在开发一个sharepoint功能,其中包括两个列表定义,2个webpart,一个功能接收器程序集和一个InfoPath表单.
我必须使用WSPBuilder打包这些,并且要求将所有这些功能打包到一个WSP解决方案文件中.
现在,WSP构建器需要特定文件夹结构中的部署文件,与12 Hive of sharepoint相同.
我的问题是我的所有功能都是单独开发的,由多个项目文件组成,这些文件不一定在同一个文件夹结构中.
如何使用WSP Builder将多个功能打包到单个WSP解决方案中?
也许这会有所帮助:http://www.codeplex.com/wspbuilder/Thread/View.aspx?ThreadId=43125
最后,我认为通过使用像NANT这样的工具构建自己的wsp文件可以获得很大的灵活性.
在wspbuilder中,您无需采取任何特定操作即可在同一解决方案包中拥有多个功能.您需要做的就是为Visual Studio中的解决方案内的12\TEMPLATE\FEATURES文件夹下的每个功能创建一个新文件夹,并将相应的feature.xml文件放在该文件夹中.例如,您可能有:
12\TEMPLATE\FEATURES\FancyFeature\feature.xml 12\TEMPLATE\FEATURES\ReallyCoolFeature\feature.xml
... 等等.
构建解决方案后,wspbuilder将读取12文件夹的整个树结构,并在wsp的manifest.xml文件中附加相应的节点."TEMPLATE"文件夹中的任何其他可能的子文件夹也是如此,包括IMAGES,LAYOUTS等:在部署时,它们都将被复制到真正的12个hive中的正确文件夹中,因为解决方案中的12个文件夹是为了是原始的复制品.
为了更好地理解,在visual studio解决方案中的12文件夹中创建一些文件夹和文件,编译项目并查看生成的manifest.xml文件.