Создание чистого репозитория Nuget2 дает ошибку - PullRequest
0 голосов
/ 28 августа 2018

Я сейчас пытаюсь создать свой собственный репозиторий nuget (например, nuget.org).

Для этого я взглянул на Nuget.Server . Но при запуске этого решения оно падает в нескольких пакетах, которые можно загрузить с nuget.org (например, opencart.entities 1.0.2).

Сбой в ServerPackageStore.cs, строка 83:

var tasks = _repository
            .GetPackages()
            .Select(package => 
                TryAddServerPackageAsync(allPackages, package, enableDelisting, token))
            .ToList();

Функция, в которую выдается исключение, - это GetPackages (), функция из пакета nuget nuget.core. Чтобы переписать функцию, принять выброшенные исключения и просто продолжить, я скачал исходный код из Nuget2 и попытался его собрать, клонировав репозиторий и запустив build.cmd:

C: \ Users \ Джонатан \ Desktop \ NuGet2> \ build.cmd. Microsoft (R) Build Engine версия 14.0.25420.1 Авторское право (C) Microsoft Corporation. Все права защищены.

Target framework is v4.0. VisualStudioVersion is 14.0.
C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(2719,5): 
error MSB3552: Resource file "..\..\NuGet.Client\src\NuGet.Core\NuGet.Frameworks\Strings.resx" cannot be found. 
[C:\Users\Jonathan\Desktop\NuGet2\src\Core\Core.csproj]

При попытке собрать его с помощью Visual Studio 2015 и 2017 Community Edition возникает та же ошибка.

Как мне создать репозиторий Nuget2 или, может быть, есть другой способ решить мою проблему с помощью Nuget.Server?

1 Ответ

0 голосов
/ 29 августа 2018

Как мне создать репозиторий Nuget2 или, может быть, есть другой способ решить мою проблему с помощью Nuget.Server?

Вам также необходимо загрузить решение NuGet.Client и распаковать его в папку NuGet.Client вашего текущего решения.

Когда вы скачаете решение NuGet2, вы обнаружите, что папка NuGet.Client пуста. Вот почему вы получили эту ошибку:

"ошибка MSB3552: файл ресурсов ".... \ NuGet.Client \ SRC \ NuGet.Core \ NuGet.Frameworks \ Strings.resx" не может быть найден. "

Чтобы устранить эту ошибку, загрузите решение NuGet.Client и разархивируйте его, скопируйте все содержимое в папке NuGet.Client-49234c230df0fc01868d8b90e667af89be8cc4f6 в папку NuGet.Client, а затем соберите проект.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...