繁体   English   中英

如何使用nuget.exe命令行获取特定Visual Studio解决方案的软件包列表

[英]How to get list of packages of a particular Visual Studio solution with nuget.exe command line

运行nuget restore命令后,我想获得Visual Studio解决方案的软件包列表。 如何从命令行或Powershell(取代Visual Studio)中进行操作?

您可以运行以下PowerShell脚本来列出解决方案中所有已安装的软件包。 请修改$ SOLUTIONROOT作为您的解决方案路径。

#This will be the root folder of all your solutions - we will search all  children of this folder
$SOLUTIONROOT = "D:\Visual Studio 2015 Project\SO Case Sample\PackageSource"

Function ListAllPackages ($BaseDirectory)
{
    Write-Host "Starting Package List - This may take a few minutes ..."
    $PACKAGECONFIGS = Get-ChildItem -Recurse -Force $BaseDirectory -ErrorAction SilentlyContinue | 
        Where-Object { ($_.PSIsContainer -eq $false) -and  ( $_.Name -eq "packages.config")}
    ForEach($PACKAGECONFIG in $PACKAGECONFIGS)
        {
            $path = $PACKAGECONFIG.FullName
            $xml = [xml]$packages = Get-Content $path
                            foreach($package in $packages.packages.package)
                            {
                                 Write-Host $package.id
                             }

        }
}

ListAllPackages $SOLUTIONROOT
Write-Host "Press any key to continue ..."
$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM