【问题标题】:Update feature.xml without re deploying the whole wsp package在不重新部署整个 wsp 包的情况下更新 feature.xml
【发布时间】:2011-04-05 08:26:27
【问题描述】:

我将 Web 部件部署为一项功能。激活后从 feature.xml 属性包中读取一个值。假设将来我想更改功能属性包中的值并更新 Web 部件。是否可以在不取消部署整个包的情况下更新 feature.xml 并重新部署 wsp。 我要做的就是更新 feature.xml 并触发 featureactivated 事件,以便更新 Web 部件。

【问题讨论】:

    标签: sharepoint moss wss


    【解决方案1】:

    您不必取消部署 wsp,您可以使用升级功能。例如,在 stsadm -o upgradesolution

    【讨论】:

      【解决方案2】:

      最完整的做法是为您的解决方案编写以下脚本

      STSADM --o upgradesolution // 这将更新 feature.xml

      STSADM -o execadmsvcjobs // 确保解决方案升级已运行

      STSADM -o deactivatefeature // 停用该功能

      STSADM -o activatefeature // 重新激活读取新值的功能

      STSADM -o execadmsvcjobs // 为不耐烦的人再次运行

      Visual Studio 的 WSPBuilder 和 STSDEV 等工具将在此提供帮助。对于 WSPBuilder,该命令位于 Tools > WSPBuilder > Upgrade Solution 中,对于 STSDEV,它是 Upgrade build target 选项。不过不确定 Vsewss 或 SPVisualDev 之类的东西。

      【讨论】:

        【解决方案3】:

        您根本不必重新部署 WSP 包。如果您更改所有前端服务器上的 feature.xml,然后重新激活该功能,它就会成功。

        但请注意,这不是一个好方法,因为您下次再次部署 WSP 包时肯定会丢失该修改。或者,当您撤回并再次部署 WSP 包时,您已经删除了之前对 feature.xml 文件所做的手动更改。这是因为 SharePoint 在其解决方案存储中具有 WSP 包的副本。因此,在使用 WSP 包时,获取 WSP 包中的所有修改并重新部署它是一种干净的方法。这也确保将更改应用于所有前端服务器。此外,当一个新的前端服务器应该在稍后阶段添加到场时!

        Kr.,伯恩德。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-10-22
          • 1970-01-01
          • 2011-04-09
          • 2012-08-06
          • 2019-10-02
          • 1970-01-01
          • 1970-01-01
          • 2019-03-15
          相关资源
          最近更新 更多