【问题标题】:Packaging multiple features into a single WSP solution file将多个功能打包到一个 WSP 解决方案文件中
【发布时间】:2010-10-08 18:55:40
【问题描述】:

我正在开发一个共享点功能,其中包括几个列表定义、2 个 Web 部件、一个功能接收器程序集和一个 InfoPath 表单。

我必须使用 WSPBuilder 来打包这些,并且要求将所有这些功能打包到一个 WSP 解决方案文件中。

现在,WSP builder 需要特定文件夹结构中的部署文件,与 sharepoint 的 12 Hive 相同。

我的问题是我的所有功能都是单独开发的,并且由多个项目文件组成,并且这些文件不一定在同一个文件夹结构中..

如何使用 WSP Builder 将多个功能打包到一个 WSP 解决方案中?

【问题讨论】:

    标签: sharepoint moss sharepoint-2007 wspbuilder wsp


    【解决方案1】:

    我通常将解决方案中的一个项目指定为“主要”项目。我设置了依赖项,以便最后构建这个“主”项目。然后对于我想包含在 wsp 包中的其他项目,我编辑“构建后事件”以将 12 文件夹的内容和项目构建的 dll 复制到主项目的相应文件夹中。然后在我构建了整个解决方案之后,我可以为主项目构建 wsp 包,并且知道它包含了所有内容。

    【讨论】:

      【解决方案2】:

      我在向 wsp 添加 dll 时遇到了麻烦,所以我写了一篇关于它的短文:How to Add DLLs to a WSP Solution

      【讨论】:

        【解决方案3】:

        简单的答案是,您必须将各个项目中的所有文件复制到一个主项目中以供您的解决方案使用。只要您的所有个人功能文件都位于“12”文件夹中的正确位置,那么您就可以开始了。

        注意:您需要检查对任何程序集的所有引用,因为此解决方案将为您的所有自定义逻辑创建 1 个程序集。

        【讨论】:

          【解决方案4】:

          您无需在 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 个配置单元内的正确文件夹中,因为解决方案中的 12 个文件夹旨在是原版的复制品。

          为了更好地理解,请在 Visual Studio 解决方案的 12 文件夹内创建一些文件夹和文件,编译您的项目并查看生成的 manifest.xml 文件。

          【讨论】:

          • 我认为您混淆了 Visual Studio 解决方案和 Visual Studio 项目。 WSPBuilder 没有内置方法可以从多个 Visual Studio 项目中创建一个 WSP 解决方案。
          【解决方案5】:

          也许这会有所帮助:http://www.codeplex.com/wspbuilder/Thread/View.aspx?ThreadId=43125

          最终,我认为您可以使用 NANT 之类的工具构建自己的 wsp 文件,从而获得很大的灵活性。

          【讨论】:

            猜你喜欢
            • 2011-01-10
            • 2021-12-09
            • 2012-01-31
            • 2021-02-17
            • 1970-01-01
            • 2023-01-19
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多