创建NuGet本地包的问题:【LocalNugGet】未将对象引用设置到对象的实例

  • 创建NuGet本地包的问题:【LocalNugGet】未将对象引用设置到对象的实例已关闭评论
  • 99 次浏览
  • A+
所属分类:.NET技术
摘要

【LocalNugGet】未将对象引用设置到对象的实例针对以上2个问题修改,NuGet管理器可以正常访问LocalNuGet包了。以下是修改后的配置文件。


现象:

  1. 创建NuGet本地包后,使用NuGet管理器访问LocalNuGet时,报错:

    【LocalNugGet】未将对象引用设置到对象的实例

  2. 检查C:Users{此处时你的用户名}AppDataRoamingNuGet路径下的NuGet.Config配置文件。

发现:

  1. LocalNuGet名字有重复出现。
  2. LocalNuGet后面有参数: protocolVersion="3"
<?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="LocalnuGet" value="D:LocalNuget" protocolVersion="3" />     <add key="LocalNuGet" value="D:LocalNuget" protocolVersion="3" />     <add key="Microsoft Visual Studio Offline Packages" value="C:Program Files (x86)Microsoft SDKsNuGetPackages" />   </packageSources> </configuration> 

分析:

  1. 经过测试,重复出现应该是在添加时,key值:文件名大小写的问题。
  2. 参数:protocolVersion:要使用的 NuGet 服务器协议版本。 当前版本为“3”。具体参考:nuget.config 文件参考 | Microsoft Learn

解决:

针对以上2个问题修改,NuGet管理器可以正常访问LocalNuGet包了。以下是修改后的配置文件。

<?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="LocalNuGet" value="D:LocalNuget" />     <add key="Microsoft Visual Studio Offline Packages" value="C:Program Files (x86)Microsoft SDKsNuGetPackages" />   </packageSources> </configuration>