Nuget服务器有时候找不到包

时间:2014-12-09 08:55:59

标签: nuget nuget-server nuget-package-restore

我有自己的nuget存储库,托管localy(nuget.server)和Teamcity以及包恢复构建步骤。

有时候,我发现了错误,比如

[12:10:06]Unable to find version '1.2.0-alfa00243' of package 'ReportsBase'.

好像,这个包不存在,但它存在!我检查了Packages文件夹,并检查了IIS的日志,发现了很奇怪的行为。第一个请求 - 好的,找到包,第二个和第三个 - 找不到,然后找到。

2014-12-09 08:08:27 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.188 NuGet + Command + Line / 2.8.50506.491 +(Microsoft + Windows + NT + 6.1.7601 + Service + Pack + 1) 200 0 0 185

2014-12-09 08:10:06 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.104 NuGet + Command + Line / 2.8.50506.491 +(Microsoft + Windows + NT + 6.1.7601 + Service + Pack + 1) 404 0 0 37870

2014-12-09 08:10:06 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.188 NuGet + Command + Line / 2.8.50506.491 +(Microsoft + Windows + NT + 6.1.7601 + Service + Pack + 1) 404 0 0 47184

2014-12-09 08:10:11 192.168.123.101 GET /nuget/nuget/Packages(Id='ReportsBase',Version='1.2.0-alfa00243') - 80 - 192.168.121.104 NuGet + Command + Line / 2.8.50506.491 +(Microsoft + Windows + NT + 6.1.7601 + Service + Pack + 1) 200 0 0 381

这通常仅在添加的包中发生。 (几秒钟前)

这么奇怪的事情可能是什么原因?

1 个答案:

答案 0 :(得分:2)

简单的NuGet.Server软件包不是为少数几个软件包而设计的。它使用内存中的哈希表,并监视文件系统的更改。如果您有任何其他用途,那么您需要获得一个真正的私人服务器。这些私有存储库还具有易于设置和维护的优点。

Inedo的ProGet是目前最受欢迎的NuGet服务器选择,但JFrogSonatype都有选项。

到目前为止,{p> MyGet是云托管的NuGet服务器最受欢迎的选择,但可能还有其他服务器。

您也可以尝试启动NuGet.org的实例,但这从未设计为用作私有软件包存储库...只需 公共NuGet.org用于私有软件包。