Visual Studio for Mac中NuGet包还原用错源失败问题求助
解决Xamarin项目迁移至VS for Mac 2022的NuGet源问题
问题1:添加自定义NuGet源时提示“Invalid Credentials”但凭证可正常浏览包
- 删除现有自定义源后重新添加:打开VS for Mac的「偏好设置」→「NuGet」→「源」,移除报错的源,再重新输入源URL和凭证。注意用户名是否为完整邮箱(部分私有源要求),若账号开启两步验证,需使用应用专用密码而非登录密码。
- 通过终端配置NuGet源,绕过UI存储问题:
打开终端执行命令:
执行后再回到VS的NuGet源设置,确认源已添加且无报错。nuget sources add -name "Grial源" -source "你的Grial私有源URL" -username "你的用户名" -password "你的密码" nuget sources add -name "Telerik源" -source "https://nuget.telerik.com/v3/index.json" -username "你的Telerik账号" -password "你的密码" - 清理钥匙串冲突凭证:打开「钥匙串访问」App,搜索关键词「NuGet」,删除所有与自定义源相关的旧凭证条目,再重新添加源。
问题2:包还原仅使用nuget.org,无法找到自定义源中的包
- 确保项目/解决方案根目录存在
NuGet.Config文件:
若迁移时未同步该文件,手动创建并添加以下内容(替换为你的源信息):
若不想明文存储密码,可执行终端命令加密:<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> <add key="Grial源" value="你的Grial私有源URL" /> <add key="Telerik源" value="https://nuget.telerik.com/v3/index.json" /> </packageSources> <packageSourceCredentials> <Grial源> <add key="Username" value="你的用户名" /> <add key="ClearTextPassword" value="你的密码" /> </Grial源> <Telerik源> <add key="Username" value="你的用户名" /> <add key="ClearTextPassword" value="你的密码" /> </Telerik源> </packageSourceCredentials> </configuration>nuget sources update -name "Grial源" -username "你的用户名" -password "你的密码" - 确认自定义源处于启用状态:在VS的NuGet源设置中,检查每个自定义源的勾选框是否已勾选,未启用的源不会被用于包搜索。
- 清除NuGet缓存并重启VS:
终端执行:
关闭VS后重新打开,右键解决方案选择「还原NuGet包」重试。nuget locals all -clear - 手动指定源安装包:打开「管理NuGet包」面板,在顶部「源」下拉框中选择自定义源,搜索
UXDivers.Grial或Telerik相关包,手动安装后再尝试构建。
内容的提问来源于stack exchange,提问作者rgorr
相关产品推荐
相关产品推荐

