Подтвердить что ты не робот

Nuget дает эту ошибку: "ps1 не может быть загружен, потому что запущенные скрипты отключены"

У меня есть новый пустой проект MVC 5, и я пытаюсь установить пакеты Nuget. Когда я вставляю в Nuget Console команду: Update-Package, я получил следующий asnwer:

File E:\WebApp\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\tools\uninstall.ps1 cannot be loaded because running scripts is 
disabled on this system. For more information, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.At line:1 char:3
+ & 'E:\WebApp\packages\Microsoft.CodeDom.Providers.Dot ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

то я начинаю устанавливать некоторые новые пакеты и снова получаю это сообщение:

WebApp\packages\Modernizr.2.8.3\tools\install.ps1 не может быть загружен, так как запущенные скрипты отключены в этой системе

Я видел некоторые сообщения, связанные с этим сообщением, но не связанные с проектами MVC.

Мой вопрос:

Почему я получаю эти сообщения?

Что я могу сделать, чтобы исправить эту проблему?

Эта проблема может появиться на сервере, на котором будет выполняться мое приложение? Некоторые скрипты не работают так, как ожидалось?

4b9b3361

Ответ 1

Я предполагаю, что конкретный пакет, который вы пытаетесь установить, должен запускать powershell script, и по какой-либо причине выполнение PowerShell отключено на вашем компьютере. Вы можете найти google на "как включить powershell" для полного руководства, но, как правило, это выглядит следующим образом:

  • Откройте окно командной строки powershell (просто выполните поиск powershell после нажатия кнопки запуска Windows)
  • Проверьте текущие ограничения, набрав "Get-ExecutionPolicy"
  • Включить powershell, набрав "Set-ExecutionPolicy remotesigned"

Эта проблема не влияет на сервер, на который вы планируете установить приложение.

Ответ 2

введите описание изображения здесь

Перевод текста изображения будет несколько: этот сертификат был отменен из его хранилища ключей.

Срок действия сертификата по моему init.ps1 истек - таким образом RemoteSigned не будет работать. Для того, чтобы версия этого пакета работала, его необходимо установить в значение ByPass или Unrestricted. Лично я бы не рекомендовал делать это...

- EDIT - Я пошел вперед и обновил пакет и обнаружил, что они подали в отставку новый сертификат для версии 1.0.2. Ошибка в консоли NuGet для исправления:

Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Ответ 3

Если вы столкнулись с этой установкой пакетов NuGet из Visual Studio Package Manager Console, запустите Visual Studio в качестве администратора.