Существует ли эквивалент командной строки nuget.exe для Uninstall-Package?

Я работаю над пакетом NuGet, который устанавливает кучу контента — представления, сценарии, файлы CSS — в веб-приложение и пытаюсь улучшить цикл изменения-компиляции-тестирования. У меня есть два проекта: сам фреймворк ("Пакет") и демонстрационное веб-приложение, которое его использует ("Веб-сайт").

Что мне нужно сделать в рамках процесса сборки Visual Studio:

  1. (как часть пост-сборки пакета) Пакет Nuget Package.nuspec -OutputDirectory ..\pkg\
  2. (как часть предварительной сборки веб-сайта) Пакет удаления Nuget
  3. (как часть предварительной сборки веб-сайта) Пакет установки Nuget -source ..\pkg\

Проблема в том, что, похоже, нет никакого эквивалента командной строки для выполнения Uninstall-Package из консоли диспетчера пакетов NuGet. Я что-то упускаю?


person Dylan Beattie    schedule 30.10.2013    source источник


Ответы (2)


Нет, в настоящее время нет.

Кроме того, nuget.exe install на самом деле ничего не устанавливает. Что на самом деле делает nuget.exe install, так это nuget.exe restore: он восстанавливает извлеченный пакет в выходной каталог. Он не запускает перехватчики PowerShell (например, install.ps1) и не изменяет какой-либо целевой проект (поскольку ни один из них не является целевым).

person Xavier Decoster    schedule 30.10.2013

Есть способ, но не использующий ни Visual Studio, ни NuGet.exe. Используя пользовательскую сборку SharpDevelop, вы можете устанавливать и удалять пакеты NuGet из командной строки и запускать их сценарии PowerShell.

Эта пользовательская сборка SharpDevelop и его надстройки NuGet позволяет запускать команды, такие как Install-Package и Uninstall-Package, из PowerShell, но вне Visual Studio.

Ограничения заключаются в том, что для него требуется SharpDevelop, а также он не поддерживает какие-либо сценарии PowerShell, специфичные для Visual Studio.

person Matt Ward    schedule 30.10.2013