Невозможно установить какой-либо пакет в Visual Studio 2015

Я пробовал каждый пакет, который мог найти, и ни один из них не будет установлен в моем проекте. Я установил каждое обновление, указанное в списке "Расширения и обновления", которые были доступны. Когда я пытаюсь установить SendGrid, например, это результат (как и результат со всеми другими пакетами):

Attempting to gather dependencies information for package 'Sendgrid.6.1.0' with respect to project 'UI\MyApplication.MVC', targeting '.NETFramework,Version=v4.5.2'
Attempting to resolve dependencies for package 'Sendgrid.6.1.0' with DependencyBehavior 'Lowest'
Resolving actions to install package 'Sendgrid.6.1.0'
Resolved actions to install package 'Sendgrid.6.1.0'
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
Adding package 'SendGrid.SmtpApi.1.3.1' to folder 'C:\Users\Keith\Source\Workspaces\MyApplication\MyApplication.MVC\packages'
Install failed. Rolling back...

Я не могу быть единственным на планете, имеющим проблемы с Visual Studio 2015, и новым и улучшенным диспетчером пакетов NuGet.

UPDATE:
Ну, должно быть что-то странное в моем решении, потому что я создал новый проект из шаблона VS2015 (web), и пакеты устанавливаются просто отлично. Когда я узнаю об этом, я опубликую разрешение в случае, если другие вызовут ту же проблему.

ОБНОВЛЕНИЕ 2:
Хорошо, это не наше решение. Мы снова создали новое решение с нуля (это потратило много времени на разработку, я могу добавить), добавил пару пакетов (Identity, EF, SendGrid), и после проверки решения в VSO другой разработчик создает новое создание ошибок ветвления и сборки. Когда я иду в пакеты NuGet для отдельного проекта, он действует так, как будто ни один из добавленных мной пакетов не доступен. Кто-нибудь еще испытывает это?

Ответ 1

tl; dr - Удалить это:

%AppData%/Nuget/Nuget.config

Предупреждение. Если у вас есть собственные источники NuGet, это приведет к их удалению, и вам придется их повторно добавлять.


Более длинная версия:

Возможно, вы испортили конфигурацию NuGet. О нет :(

Nuget.config - это файл, используемый для отслеживания всех мест, из которых извлекается NuGet, а также для настройки других вещей. Скорее всего, этот XML файл как-то сломался.

  • Перейдите по этому пути: C:\Users\{{username}}\AppData\Roaming\
  • Удалить Nuget.config
  • Перезапустите VS для хорошей меры

Для справки: в хорошие дни 2017 года ваш файл должен выглядеть примерно так

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <activePackageSource>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </activePackageSource>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <!-- Others -->
  </packageSources>
  <packageSourceCredentials>
    <!-- secret stuff -->
  </packageSourceCredentials>
</configuration>

Ответ 2

Закрытие и повторное открытие VS2015 решает проблему.

Кажется, что в некоторых случаях просто перезагрузка затронутого проекта будет работать.

Ответ 3

Я нашел решение для этого в моем случае, попробуйте обновить диспетчер пакетов NuGet.

Для этого:

  • От VS перейдите к Инструменты → Расширения и обновления
  • Откройте пункт меню Обновления слева, затем выберите Галерея Visual Studio.
  • Если есть обновление для Nuget Package Installer, оно должно отображаться в списке справа. Нажмите Обновить
  • Перезапустить Visual Studio

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

Надеюсь, это поможет!

Ответ 4

В моем случае обновление Microsoft.CodeDom.Providers.DotNetCompilerPlatform и Microsoft.Net.Compilers вызвало проблему.

Удаление bin, obj и packages папок и перезапуск Visual Studio 2015 решена проблема для меня.

Ответ 5

В общем закрытии и повторно открыть VS 2015 исправлено большинство проблем, с которыми я столкнулся. Как только мне нужно было выполнить ремонт на одном из моих компьютеров.

Однако я собирался сделать это Closing and re-opening VS2015 resolved the issue for me Я решил, что вместо этого я щелкнул правой кнопкой мыши по проекту и Unload Project, затем щелкните правой кнопкой мыши и Обновить проект THEN Manage Nuget работает!

Ответ 6

Вам необходимо очистить все кэши NuGet; для этого вам нужно перейти в настройки и нажать на него, как это:

enter image description here

Ответ 7

Просто, чтобы помочь всем, кто приземлился на этой странице после обновления VS2015 для обновления 2 и пытается управлять пакетами на веб-сайте, получение ошибки "NuGet файл конфигурации недействительно", это известная и признанная проблема:

https://connect.microsoft.com/VisualStudio/feedback/details/2698136/nuget-configuration-is-invalid-manage-nuget-packages-for-solution-disabled

Я снова начал работать, установив диспетчер пакетов 3.4.4 (бета) из http://dist.nuget.org/index.html

Они также сообщают, что обновление 3 для Visual Studio также содержит исправление

Ответ 8

Я предполагаю, что Nuget Package Manager испортил VSO. Я создаю новый проект, добавляю пакеты к нему просто отлично, проверьте TFS. Затем я возвращаюсь домой, "Получаю последнюю версию" и "Запуск", и сбой, потому что Nuget Package Manager не восстанавливает мои пакеты. Решение: на моей домашней машине

  • откройте Nuget Package Manger, удалите все упакованные, которые установили
  • Откройте папку "Ссылки", щелкните правой кнопкой мыши > "Удалить" для всех пакетов, которые вы установили.
  • Переустановите их через диспетчер пакетов Nuget.
  • Регистрация

Ответ 9

Мне удалось решить эту проблему, переустановив диспетчер пакетов Nuget с помощью Tools → Extensions and Updates

Ответ 10

У меня была эта проблема с Visual Studio 2017: Оказывается, существуют два проекта библиотеки классов - один для .Net, а другой для С#. Я создал файл для .Net, и когда я попытался установить определенный пакет (Nunit в моем случае), я получил сообщение об ошибке.

Воссоздание проекта как библиотеки классов С# устраняет проблему

Ответ 11

В моем случае эта проблема была вызвана несоответствием в настройке Целевой структуры для каждого проекта. Когда я создал новый проект, VS 2015 по умолчанию был равен 4.5.2, однако все мои пакеты nuget были построены для 4.6.

По какой-то причине VS 2015 не показывал мне эти ошибки. Я не видел их, пока не создал новый пустой проект, и попытался добавить там свой проект nuget. Такое поведение, возможно, усугубилось, потому что я несколько раз переименовал проект во время начальной настройки.

I решил проблему

  • изменение целевой структуры моих проектов на 4.6
  • закрыто VS 2015
  • удаленные "пакеты", "obj" и "bin" папки
  • снова откройте решение и попробуйте снова добавить пакет nuget.

Ответ 12

Я использую Visual Studio 2015 Update 3, и мне удалось воспроизвести эту ошибку (несмотря на обновление 3, предположительно содержащее исправление).

Как было сказано выше, надежное исправление состоит в том, чтобы сделать следующее: 1) выйти из Visual Studio, 2) удалить папку пакеты, 3) перезагрузить VS.

Но... если вы не хотите немедленно покидать VS по какой-то причине, я все еще мог добавлять/удалять пакеты из всех проектов, выбирая " Manage NuGet Packages для решения", а не отдельного проекта с проблемой.

Ответ 13

Восстановление Visual Studio 2015, похоже, решило эту проблему для меня. Смотрите эту проблему для NuGet в GitHub.

Ответ 14

Иногда сложные проекты с трудом согласовываются с тем, что касается изменений. Например, в одном случае я получил эту ошибку, когда пакет nuget ссылался на другое решение, которое мы должны были включить в "основное" решение, и это привело к тому, что среда IDE была пригодной, потому что было доступно более одного менеджера пакетов nuget. Вы можете решить многие из этих проблем, удалив и восстановив свои ссылки и зависимости один за другим с нуля в проектах, где есть проблемы/ошибки.

Ответ 15

У меня была эта проблема, которая, по-видимому, была вызвана чем-то сломанным в папке packages уровня решения. Я удалил содержимое папки и nuget снова установил все пакеты.

Затем я смогу снова установить новые пакеты.

Ответ 16

Откройте папку с папками. Проверьте, существуют ли файлы с расширением .deleteme, например Newtonsoft.Json.9.0.1.deleteme. Удалите все пакеты с файлом .deleteme вручную. Удалите файлы .deleteme. Закройте и откройте Nuget Explorer.

Ответ 17

Измените "источник пакета" в nuget на All

Подробнее: Ничего из этого не помогло в моем случае. Моя проблема заключалась в том, что я ограничился только одним фидом. Как только я изменил "источник пакета" на All, моя проблема была решена. Я считаю, что основная проблема заключается в том, что мой частный pkg имеет зависимость от других pkgs от nuget.org.

Надеюсь, это поможет кому-то.

Ответ 18

Некоторые из ваших пакетов могут не поддерживаться вашим типом проекта. Например, вы не можете использовать RestSharp или Moq с проектами UAP.

Чтобы получить лучшее сообщение об ошибке, попробуйте добавить пакет в свой project.json файл напрямую, а затем попытаться создать свое решение.

Ответ 19

В моем случае ничего из этого не помогло. Основная причина проблемы в моем случае состояла в том, что я удалил пакет раньше и не проверял изменение в исходном элементе управления (TFS в моем случае). После проверки изменения (= удаление файла в папке пакетов) я мог бы переустановить пакет.

Ответ 20

В моем случае в каталоге soultion был пустой файл packages.config, после удаления которого обновление прошло успешно