找出所有项目引用了哪些 NuGet 包、版本号、对应项目路径,并筛选出“同一个包名但版本不同”的情况。

全局扫描所有 .csproj 文件

打开 PowerShell,运行以下脚本(替换为你的代码根目录):

$root = "D:\YourCodeRoot"
$results = Get-ChildItem -Path $root -Recurse -Filter *.csproj | ForEach-Object {
    $proj = $_.FullName
    [xml]$xml = Get-Content $proj
    $xml.Project.ItemGroup.PackageReference | Where-Object { $_ } | ForEach-Object {
        [PSCustomObject]@{
            Project = $proj
            Package = $_.Include
            Version = $_.Version
        }
    }
}

可选 输出所有包引用

$results | Out-GridView  # 可视化查看

筛选“同一个包名但版本不同”的包

$duplicates = $results | Group-Object Package | Where-Object { $_.Group.Version | Select-Object -Unique | Measure-Object | ForEach-Object { $_.Count -gt 1 } }

$duplicates | ForEach-Object {
    Write-Host "📦 包名: $($_.Name)"
    $_.Group | Format-Table Project, Version
}

输出示例:
image

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值