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

NuGet: "X" уже имеет зависимость, определенную для "Y",

В NuGet появляется следующая ошибка при попытке установить пакет Microsoft.AspNet.Server.IIS

Attempting to resolve dependency 'Microsoft.AspNet.Loader.IIS.Interop (≥ 1.0.0-alpha4-10330)'.
Attempting to resolve dependency 'Microsoft.AspNet.Loader.IIS (≥ 1.0.0-alpha4-10330)'.
'Microsoft.AspNet.Loader.IIS' already has a dependency defined for 'Microsoft.AspNet.FeatureModel'.

Как его решить?

UPDATE: Также я получаю следующее:

Attempting to resolve dependency 'Microsoft.Framework.DependencyInjection (≥ 1.0.0-alpha4-10326)'.
'Microsoft.Framework.DependencyInjection' already has a dependency defined for 'Microsoft.Framework.ConfigurationModel'.
4b9b3361

Ответ 2

Я исправил аналогичную проблему в своем решении:

  • Открытие командной строки
  • Переход к папке .nuget в моем решении
  • Запуск nuget update -self

Это обновило копию NuGet.exe, которая была в моем решении от 2.8.0 до 3.4.4, в котором исправлено, что "X" уже имеет зависимость, определенную для ошибки "Y", которая останавливала ее от загрузки SSH.NET автоматически перед зданием.

(Если ваше решение не содержит в нем копии NuGet.exe - и это может быть не так - тогда вы должны попробовать решение в ответе TN)

Ответ 3

Я попробовал обновление, но для меня это не сработало. Помогал:

  • удалить nuget = > Инструменты > Расширения и обновления > Установленные
  • установить nuget
  • перезагрузить VS

Ответ 4

Я получил эту проблему на нашем сервере сборки TeamCity. Я попробовал обновить NuGet на сервере сборки (через TC), но это не сработало. Я, наконец, решил проблему, изменив "Режим обновления" этапа сборки установщика Nuget из файла решения в файл packages.config.

Ответ 5

Я получил вопрос 'Newtonsoft.Json' already has a dependency defined for 'Microsoft.CSharp' на сервере сборки TeamCity. Я изменил " Режим обновления" шага сборки установщика Nuget от файла решения до packages.config и NuGet.exe. strong > до последней версии (у меня было 3.5.0), и это сработало!

Ответ 6

  • Перейдите по ссылке https://www.nuget.org/packages/ClosedXML/0.64.0
  • Поиск пакетов nuget
  • Смотрите всю версию связанных пакетов
  • Установите нижнюю версию пакетов

Ответ 7

Я столкнулся с этой ошибкой в ​​устаревшей версии Visual Studio 2010. Из-за конфигурации проекта мне не удалось обновить эту версию до новой. Поэтому обновление NuGet, о котором мы говорили выше, не помогло мне.

Коренная причина ошибки в этой и подобных ситуациях находится в зависимостях пакета, который вы пытаетесь установить, которые не совместимы с версией .NET, доступной в вашем проекте.

Универсальное решение не является обязательным обновлением Visual Studio или .NET, а при установке более старых версий NuGet того же пакета, совместимого с вашей системой.

Невозможно точно сказать, какая из ранних версий будет работать. В моем случае эта команда установила пакет без обновлений NuGet.

Install-Package X -Version [compatible version number]

Ответ 8

В моем случае мне пришлось удалить файл NuGet.exe в папке Project/.nuget и перестроить проект.

У меня также есть в NuGet.targets DownloadNuGetExe, помеченный как true:

<DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">true</DownloadNuGetExe>

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

Ответ 9

Единственное решение, которое сработало для меня, заключалось в том, чтобы полностью удалить nuget из Visual Studio 2013, а затем установить его снова с обязательным перезапуском VS между ними.

Ответ 10

  1. Перейти в Инструменты.
  2. Расширения и обновления.
  3. Обновите Nuget и любую другую важную функцию.
  4. Запустить снова.

Готово.