Как вывести список всех локально установленных пакетов NuGet?
Есть ли в NuGet эквивалент RPM -qa
? Внутри Chocolatey есть команда chocolatey list -localonly
, но, хоть убей, я не могу найти NuGet-эквивалент этой команды.
Как вывести список всех локально установленных пакетов NuGet?
Есть ли в NuGet эквивалент RPM -qa
? Внутри Chocolatey есть команда chocolatey list -localonly
, но, хоть убей, я не могу найти NuGet-эквивалент этой команды.
Ответы:
В консоли диспетчера пакетов NuGet введите следующую команду:
Get-Package
Это либо распечатает список установленных пакетов, либо, если их нет, напишите в консоль следующую строку:
PM> Get-Package
No packages installed.
Дополнительные сведения см . В Справочнике по NuGet PowerShell .
Get-Package
, имена пакетов - обрезаются , когда они имеют более чем 32 characteres. Можно ли увеличить столбец имени пакета, чтобы вывод отображал полные имена без их обрезки?
Get-Package | Format-Table -AutoSize
сделаю это
Если ты просто сделаешь
Get-Package
он перечислит пакеты и ссылки на них. Он будет перечислять одни и те же пакеты снова и снова, если на них много раз ссылались. Если вы хотите получить чистый список всех пакетов, установленных в решении, вы можете сделать
Get-Package | select -Unique Id, Versions
Get-Package -ProjectName "Your.Project.Name"
Покажет пакеты для указанного проекта.
См. Также: Справочник по PowerShell консоли диспетчера пакетов
Обратите внимание, что в каждом проекте будет файл packages.config, который используется для отслеживания установленных пакетов. Если это изменить (в частности, если вы измените его в обратном направлении), проекты могут не загрузить автоматически правильную версию пакета. В этом случае запишите необходимые пакеты и выполните команду uninstall-package, а затем установочный пакет для каждого.
Кроме того, резервные копии - ваш друг! ;)
В Visual Studio
packages.config
файл. См. Документацию Microsoft .
Как мне просмотреть все установленные пакеты NuGet?
Предполагая, что NuGet установлен правильно
Щелкните правой кнопкой мыши узел " Проект" и выберите " Управление пакетами NuGet".
См. Список установленных пакетов
Ответ на вопрос «Есть ли способ сделать это с помощью nuget.exe? - bitbonk» :
nuget list -Source C:/packages
Где C: / packages - это путь к вашему локальному репозиторию.
Если у вас установлена среда выполнения .NET Core, вы можете использовать команду dotnet list package в инструментах интерфейса командной строки .NET Core, чтобы получить установленные пакеты для данного решения или проекта. Используйте его так из командной строки Windows:
dotnet list "C:\Source\MySolution\MySolution.sln" package
Он работает как с проектами .NET Framework, так и с .NET Core.
Примечание. Чтобы эта команда работала, решение должно использовать новый формат NuGet PackageReference для ссылки на пакеты NuGet. Перенести так же просто, как щелкнуть правой кнопкой мыши файл packages.config и выбрать «Migrate packages.config to PackageReference ...», а затем восстановить пакеты путем создания решения.
Ответ на вопрос "Есть ли способ сделать это с помощью nuget.exe?" - битбонк
На основании ответа от jstar выше. Я использовал \
вместо того, /
что больше подходит для среды Windows, где nuget находится дома. Мое изменение ответа было отклонено, поэтому я публикую свой собственный.
nuget list -Source c:\code\packages
Где c:\code
путь к вашему локальному репозиторию кода. packages
Папка находится на том же уровне , как ваше решение-файл (* .sln).