我正在尝试在 Visual Studio 2012 Update 3 中启动包管理器控制台,并在打开窗口时看到以下输出:
包管理器控制台主机版本 2.6.40627.9000
键入“get-help NuGet”以查看所有可用的 NuGet 命令。
术语“Set-Location”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。
我从来没有得到提示,这对我来说意味着控制台未能正确初始化。这确实在某个时候起作用,比如两周前,但我无法推断出是什么变化导致它停止工作。即使我在安全模式下启动,我也会看到错误。我还安装了 Visual Studio 2010,我看到了同样的错误,这表明 Visual Studio 不是罪魁祸首。
包管理器控制台尝试运行失败的脚本是什么?Set-Location
是一个内置的 PowerShell cmdlet,这就是为什么这个错误让我感到困惑。我不确定如何开始对此进行故障排除。我卸载并重新安装了包管理器扩展,但问题仍然存在。
我在尝试对 Web API 项目的包安装失败进行故障排除时发现了这个问题。当我尝试创建一个新的 Web API 项目时,我看到如下错误:
EntityFramework.5.0.0:初始化 PowerShell 主机失败。如果您的 PowerShell 执行策略设置设置为 AllSigned,请先打开包管理器控制台以初始化主机。
这里有一些可能会有所帮助的附加信息。我正在运行带有 .NET 4.5.50709 和 PowerShell v2 的 Windows 7。在解决此问题时,我的执行策略设置为不受限制。
C:\> $psversiontable.psversion
Major Minor Build Revision
----- ----- ----- --------
2 0 -1 -1