我有这个大型应用程序,我使用Windows RM 3.0将数据库,SSIS包和其他东西部署到多个不同的服务器,它工作得很好。有人要求将商业智能SharePoint网站的品牌更改添加到此流程中。所以我创建了一个自定义构建脚本来执行此操作,并设置Win RM以在Sharepoint服务器上从PowerShell运行此命令
Install-SPSolution –Identity Payload\SharepointDeploy.wsp –WebApplication http://localhost/ -GACDeployment
当我运行时,我收到以下错误
Install-SPSolution:Microsoft .Net Runtime版本4.0.30319.18444不支持Microsoft SharePoint。
阅读,它似乎是一个PowerShell 3.0问题,当在2.0中运行时,它工作正常。但是,我现有的流程要求PowerShell 3.0正常运行。反正有没有使用3.0?或者我可以使用Invoke-Command或其他东西来启动2.0实例?如果需要,我可以提供更多细节。
答案 0 :(得分:1)
您可以构建一个自定义端点,该端点将运行所需的PowerShell版本。这样你就不必弄乱你可能想要保留默认端点的默认端点
这将要求您使用类似的方式连接到新端点 new-pssession -computername" SharePoint01" -configurationName" psv2"。
使用以下cmdlet构建和终结:
New-PSSessionConfigurationFile -Path "psv2session.pssc"
然后使用该配置使用此cmdlet注册端点:
Register-PSSessionConfiguration -Name psv2 -Path psv2session.pssc –ShowSecurityDescriptorUI
这很容易做到,这个链接提供了很好的设置介绍: http://blogs.technet.com/b/heyscriptingguy/archive/2014/04/02/build-constrained-powershell-endpoint-using-configuration-file.aspx(虽然博客处理受限制的端点,但teqnique基本上与您需要做的相同)
答案 1 :(得分:0)
我遇到了与控制台应用程序相同的问题,我将框架版本从项目属性页面的4.5减少到3.5,我的工作非常完美!