gpt4 book ai didi

powershell - 清除PowerShell Sharepoint缓存?

转载 作者:行者123 更新时间:2023-12-04 04:27:23 27 4
gpt4 key购买 nike

我有一个奇怪的问题:

我使用PowerShell部署了包含内容和网站模板的WSP软件包

Add-SPSolution ...
Install-SPSolution ...

现在,当尝试创建新的网站集时,我的模板是可见的,并且可以使用我的模板创建一个新的网站集。

当我尝试与之前的 session 在同一 session 中使用PowerShell( Get-SPWebTemplate) 查看所有已安装的网站模板时,不会显示新模板!

反之亦然:撤回/删除解决方案时,由于模板消失了,因此我无法再使用模板创建新的网站集。但是在仍然打开的PowerShell session 中,模板仍然可见。

唯一的解决方案:撤消/部署解决方案后,打开一个新的PowerShell session -仅在此"new" session 中,更改才被同步。

我的问题是:如何清除此PowerShell缓存?如何直接从服务器而不是从某些缓存中获取站点模板列表?

其他一些人也想出了关闭/重新打开PowerShell(PowerShell caching leads to head-banging)的方法-这不是解决方案...

免责声明:Cross post from "How to clear PowerShell Object Model Cache"

最佳答案

事实证明,PowerShell 实际上是缓存某些内容,尤其是OWSSVR.DLL

有两种(和½)方法可以解决此问题:

  • Use a nifty PowerShell snippet to kill a Sharepoint thread and reload a DLL
  • 使用从第一个 session
  • 内启动的另一个PowerShell session
  • 使用stsadm创建旧站点,因为stsadm位于另一个线程中,因此“看到”了新的站点模板

  • 我采用了方法2½(表示为3),因为使用单线stsadm而不是调用另一个PS session 是最简单的方法。

    关于powershell - 清除PowerShell Sharepoint缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5078728/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com