NuGet包与其下载源的关联是什么?如何指定来源还原特定NuGet包
1 指定包来源还原特定NuGet包
注意:nuget restore命令本身面向项目/解决方案的完整依赖树执行批量还原,没有直接指定单个包的参数,单独拉取单个包优先使用nuget install命令
- 直接指定源拉取单个包的命令格式:
nuget install [包名] -Source [源地址/已配置的源名称] -OutputDirectory [本地存放路径] -Version [可选:指定包版本号]
你可以依次尝试你现有四个源排查可用性,例如测试监管源的命令为:nuget install DevExpress.Chartsv18.2_Core -Source http://10.1.3.xxx/nuget -OutputDirectory .\packages
如果源需要身份验证,补充-Username [账号] -Password [密码/个人访问令牌]参数即可。
- 如果你需要用restore流程验证,可以临时创建一个仅引用
DevExpress.Chartsv18.2_Core的空白C#项目,执行restore时指定源:nuget restore [空白项目.csproj路径] -Source [指定源地址]
2 查询特定NuGet包对应的下载源
- 方法1:遍历源搜索匹配
执行nuget list命令依次代入你所有的源地址,能返回对应包信息的就是目标来源:nuget list DevExpress.Chartsv18.2_Core -AllVersions -Source [待测试源地址] - 方法2:查看本地缓存元数据
如果之前有成功下载过该包,打开本地NuGet全局缓存目录(默认路径为C:\Users\[你的系统用户名]\.nuget\packages),找到对应包名称的文件夹,内部的.nupkg.metadata文件中会记录该包的原始下载源地址。 - 方法3:Visual Studio界面查询
打开Visual Studio的NuGet包管理器界面,在右上角包源下拉框依次切换单个源,搜索目标包名,能搜索到结果的就是对应来源。
内容的提问来源于stack exchange,提问作者Dominique
相关产品推荐
相关产品推荐

