在我们的Azure Pipeline中,我们使用NuGet pack命令来打包程序集并将其发布在私有feed上。这一直没有问题,直到我们使用迁移过程(https://docs.microsoft.com/en-us/nuget/consume-packages/migrate-packages-config-to-package-reference)将cproj文件升级为使用PackageReference而不是packages.config。
迁移后,我们的管道开始失败。具体来说,NuGet打包步骤失败,并显示以下消息:
“ ## [错误] nuget命令失败,并显示退出代码(1)和错误(错误NU5012:找不到'd:\ a \ 1 \ s [解决方案名称] \ MigrationBackup [_SOLUTION DIR] \ Base [ PROJECT DIR] \ bin \ Release [PROJECT] .dll'。请确保该项目已构建。”
答案 0 :(得分:1)
原来的解决方案很简单: 从package.config迁移到packagereference时,Visual Studio在解决方案下创建一个MigrationBackup文件夹。删除此MigrationBackup文件夹即可解决此问题。删除文件夹后,管道中的nuget pack命令再次正常工作。
注意:不仅要在本地删除解决方案,还要从DevOps的存储库中删除解决方案(事先进行本地备份)