Например, удаление пакета с большим количеством зависимостей, как WindowsAzure.Storage
:NuGet Не удается удалить пакет рекурсивно, если некоторые зависимости используются
1) кнопки Удалить из «Управления NuGet пакетов UI» оставляют всю зависимость (в основном неиспользованные). Делает прекрасный смысл, зачем мне нужно удалять неиспользуемые зависимости?
2) Хорошо, таким образом the docs упоминание -RemoveDependencies
который описывается как:
Удаляется пакет и его неиспользованные зависимости. То есть, если какая-либо зависимость имеет другой пакет, который зависит от него, он пропускается.
Описание кажется довольно ясным, весьма внушительны это не по умолчанию, но все, так что давайте попробуем в действии:
PM> Uninstall-Package WindowsAzure.Storage -RemoveDependencies
Attempting to gather dependency information for package 'WindowsAzure.Storage.7.1.2' with respect to project '***', targeting '.NETFramework,Version=v4.5.2'
Resolving actions to uninstall package 'WindowsAzure.Storage.7.1.2'
Uninstall-Package : Unable to uninstall 'Newtonsoft.Json.9.0.1' because '***, Hyak.Common.1.0.2, Microsoft.Azure.Common.Dependencies.1.0.0' depend on it.
At line:1 char:1
+ Uninstall-Package WindowsAzure.Storage -RemoveDependencies
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Uninstall-Package], Exception
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.UninstallPackageCommand
Wat?
Нет, никакой другой пакет не зависит от WindowsAzure.Storage
(это довольно много корневой пакет)
ОК, так что, возможно, что-то напутал в проекте?
Создано новое решение, установлен WindowsAzure.Storage
и Nancy.Serialization.JsonNet
(оба зависят от Newtonsoft.Json
), пытался удалить WindowsAzure.Storage
- тот же результат.
Возможно, это работает?
VS 2015 UPD3
UPD подтвердил, что ошибка и, вероятно, не становится фиксированной, по-видимому, единственный способ, чтобы заставить его работать, чтобы использовать новую модель пакетов. См. Принятый ответ для ссылки на созданную проблему GitHub