Nuget软件包还原失败,无法访问路径'.. \ packages \ Microsoft.Owin.Security.Jwt \ 4.0.0'

时间:2019-10-17 17:58:54

标签: visual-studio-2015 nuget nuget-package-restore

正如标题所述,我在Visual Studio 2015 Update 3 Windows 10系统中还原软件包时遇到此错误。

背景: 我公司正在维护一个中央nuget存储库,所有软件包都从该库中安装。 提到的软件包是对我组织开发的软件包的依赖。

因此,我正在使用解决方案.nuget软件包来指定我们的中央存储库,以下载所有软件包,即使它来自nuget.org。一切都通过该中央存储库提供。项目中没有直接的nuget.org软件包网址配置。

一些故障排除信息: 我尝试直接从nuget还原程序包,但没有任何问题。(权限,项目设置或系统配置均未更改)

还原过程中收到错误:

NuGet项目projectName \ project的软件包还原失败:无法找到软件包'Microsoft.Owin.Security.Jwt'的版本'4.0.0'。
https://company-central-repository/nuget:从“ https://company-central-repository/nuget/Download/Microsoft.Owin.Security.Jwt/4.0.0”下载“ Microsoft.Owin.Security.Jwt.4.0.0”时出错。 拒绝访问路径“ .. \ packages \ Microsoft.Owin.Security.Jwt \ 4.0.0”。 https://company-central-repository/nuget-prerelease:从“ https://company-central-repository/nuget-prerelease/Download/Microsoft.Owin.Security.Jwt/4.0.0”下载“ Microsoft.Owin.Security.Jwt.4.0.0”时出错。   拒绝访问路径“ .. \ packages \ Microsoft.Owin.Security.Jwt \ 4.0.0”。

我不确定这是怎么回事。

我怀疑我无法下载该软件包,因为我无权访问该存储库。那就是拒绝访问来自哪里,而不是我的本地文件夹。

但是我可以通过存储库的Web门户及其可见的内容搜索这些软件包,并且可以阅读详细信息。我也可以下载.package文件。

我还检查了文件夹“ C:\ Users \ username.nuget \ packages”和项目包文件夹的权限。完全访问权限在那里。直接从nuget.org还原添加的其他软件包没有问题。

我从哪里可以查看与此相关的更多日志? 如果其他人遇到相同的问题,请分享您的解决方案。

1 个答案:

答案 0 :(得分:0)

我想这个问题与本地文件夹有关,而不是与中央nuget存储库有关,因为您可以在那里访问软件包。 Access to the path '..\packages\Microsoft.Owin.Security.Jwt\4.0.0' is denied.表示本地文件夹发生了什么事。

  

.. \ packages \ Microsoft.Owin.Security.Jwt \ 4.0.0

这条路很奇怪。对于packages.config格式,程序包存储在C:\Users\xxx\.nuget\packages\Microsoft.Owin.Security.Jwt\4.0.0..\packages\Microsoft.Owin.4.0.0\xxx(在解决方案文件夹中)中。我不确定您的项目到底发生了什么,这里有一些建议可能会有所帮助:

1。检查packages.configxx.csproj中的语句,它应该是:

<package id="Microsoft.Owin.Security.Jwt" version="4.0.0" targetFramework="netxxx" />

    <Reference Include="Microsoft.Owin.Security.Jwt, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Owin.Security.Jwt.4.0.0\lib\net45\Microsoft.Owin.Security.Jwt.dll</HintPath>
      <Private>True</Private>
    </Reference>

如果存在任何this之类的msbuild目标,请将其删除。

2。关闭VS实例,删除Solution目录中的packages文件夹,然后删除packages中的C:\Users\xxx\.nuget\packages文件夹。

3。确保将https://api.nuget.org/v3/index.json设置为Package Sources

之后,右键单击解决方案=>还原nuget软件包以检查问题是否消失。(启用这些two options)。此外,您可以创建一个新的空项目以使用nuget软件包来检查其是否存在有所不同。希望对您有所帮助:)