当我尝试使用Azure DevOps构建.NET Core解决方案时出现此错误:
error NU1102: Unable to find package NuGet Frameworks with version (>= 4.9.3)
error NU1102: - Found 33 version(s) in http://nuget.bentley.com/nuget/Default [ Nearest version: 4.7.0-preview1-4986 ]
由dotnet.exe CLI执行NuGet还原时,在Cake脚本中发生错误:
Executing: "d:/vsts/a/_tool/dncs/2.2.100/x64/dotnet.exe" restore "./src/StorageRegistryPortal.sln" --source "http://nuget.bentley.com/nuget/Default"
它会在抛出上述NU1102错误之前尝试从解决方案文件中还原NuGet软件包:
Restoring packages for d:\vsts\a\2921\s\src\StorageRegistryPortal\StorageRegistryPortal.csproj...
我的解决方案中没有任何东西引用此“ NuGet.Frameworks”包。因此,我想知道“ dotnet.exe” CLI本身是否依赖于此nuget软件包,才能还原其余的NuGet软件包。此外,这仅在AzureDevops中发生。当我在本地PC上执行build / cake脚本时,它可以成功还原所有nuget程序包,而不会出现问题。
我已经尝试将“ Use Nuget 4.9.3”任务添加到构建管道中,但是遇到相同的错误。
注意:如果我删除了“使用Nuget 4.9.3”任务,则错误更改为(> = 4.7.0)。因此,它似乎正在寻找与当前版本的nuget.exe匹配的Nuget.Framework,但找不到它。
答案 0 :(得分:0)
答案 1 :(得分:0)
我终于能够解决此问题。事实证明,nuget.org团队发生了重大变化,这导致我们的内部nuget服务器无法提供4.7和4.9.3版本的NuGet.Frameworks。这是dotnet.exe还原nuget程序包所必需的基本nuget库。对于.net核心项目,该框架必须为4.7版或更高版本。无论如何,解决方案是我们必须对内部nuget服务器进行调整,以解决nuget.org中的更改。
答案 2 :(得分:0)
我遇到了同样的错误。首先我更新了 Visual Studio,然后我清除了所有 NuGet 缓存,删除了 bin 文件夹,清理并构建了解决方案。它对我有用! P.S:如果还不算太晚,请使用 dapper :)