NuGet Server无法找到.nupkg包文件

时间:2017-05-31 08:52:02

标签: nuget nuget-server

好的,这是Could not load file or assembly 'NuGet.Server, Version=2.11.1.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies的衍生物,好像我找不到解决方法。

我将我的Nuget Server项目发布到我的Windows 2012 R2服务器并指向文件所在的适用目录。包文件存在,如下面的屏幕截图所示,但我继续得到以下错误:

enter image description here

  

严重级代码描述项目文件行抑制状态   将Files \ PackageName.1.0.0.nupkg文件复制到obj \ Release \ Package \ PackageTmp \ Packages \ PackageNameJson.1.0.0.nupkg失败。找不到文件'Packages \ PackageName.1.0.0.nupkg'。 nuget_server_02 0

我安装了NuGet Server v2.11.3 ,我的项目定位于 .NET Framework 4.6 。需要注意的一点是,软件包本身来自早期版本的.NET - 很可能是3.5。

这是我的 web.config 文件:

 <add key="packagesPath" value="D:\RootFolder\SubFolder\SolutionNameFolder\ProjectNameFolder\Packages"/>

即使经过几次Restore NuGet Packages尝试,我仍然面临着这种困境。我真正努力理解的一件事是,如果我将packagesPath指向一个本地目录,它可以工作并检索包,但当我指向我服务器上的同一个项目时,我感到头痛。

以前,在相关SO问题的附带链接中,我可以发布但现在我甚至无法完成该阶段,即使我上次从事该项目后从未对该项目进行任何更改。我今天决定重温它。

更新

我删除了bin文件夹,并根据Could not load file or assembly 'someProject' or one of its dependencies. Access is denied重建了我的解决方案但是仍然无法找到该文件。

1 个答案:

答案 0 :(得分:0)

您可以运行您的nuget服务器,它将显示一个html文件作为输出(Default.aspx)。当然,您可以修改此文件,使其看起来像您想要的任何内容,并以其他方式进行更改。您无法更改nuget服务器服务的行为方式,因为它是从dll运行的。您应该能够使用nuget服务器的输出页面显示您的存储库文件。

我遇到了一组类似的错误,并在我试图显示我的存储库内容时监视了事件查看器。

事件查看器显示每次我的Nuget Server尝试列出packages文件夹的内容时都会抛出错误。

请记住nuget包是zip文件,要显示nuget包中包含的信息的详细信息,nuget服务器必须解压缩它们。如果文件已损坏,服务器将抛出错误并停止尝试列出任何其他文件的内容。此错误导致w3wp.exe崩溃。它将在事件日志的Windows-&gt; Applications部分中记录为ASP.NET错误。

我的办法是删除我的nuget服务器上的packages文件夹的内容,然后重新启动它们。

如果您的存储库中有大量文件,这可能是不切实际的,因此应选择在事件查看器中显示的第一个错误附近上传的任何文件,以便首先上传。

其中一个文件可能已损坏。

我建议您检查服务器上的事件查看器,并确保存储库中没有损坏的文件。

您可以使用Nuget Package Explorer查看(并编辑某个点)您的存储库内容。如果要查看的文件已损坏,则应显示该文件的错误。然后,您可以重新启动该文件,如果问题是文件问题,这将解决它。

如果失败,您还可以重新安装nuget服务器。代码不太可能被破坏,但值得一试。

祝你好运。