Недавно мы настроили локальный сервер nuget для улучшения обработки зависимостей в наших проектах.Для упаковки и отправки наших библиотек мы используем «новый» формат проекта в Visual Studio и дополнение для рынка под названием NuPack-Nuget Packager.
Рабочий процесс для разработки - это создание нового проекта и получение необходимых зависимостей.
Теперь у нас странное поведение на всех рабочих местах.
Например.у нас есть 2 библиотеки: LibA (версия 1.1.0) и LibB (версия 2.5.0), где LibB зависит от LibA и ссылается на него как на ссылку проекта.У меня есть проект, ссылающийся на LibB (версия 2.5.0) через Nuget.
Когда я меняю LibB (сейчас версия 2.5.1) и помещаю его в наш Nuget и обновляю ссылку в моем проекте, все выглядит нормально, проект собирается и не имеет ошибок, но во время выполнения, когда кодвыполняется, что ссылается на LibA (по-прежнему версия 1.1.0, без изменений) я получаю исключение FileNotFound: Assembly LibA, AssemblyVersion 1.1.0 не может быть найден.
Единственный обходной путь на данный момент - это упаковать новый LibA в версии 1.1.1 (без изменений кода) и отправить его на сервер nuget и обновить ссылку в моем проекте до версии 1.1.1.
Кто-нибудь знает причину / решение этой проблемы?
РЕДАКТИРОВАТЬ Вещи, которые не решают проблему:
- Очистить / восстановитьрешение (ни Зависимости, ни Проект)
- Update-Package -reinstall в командной строке диспетчера пакетов
- Очистка кэшей Nuget и восстановление всех зависимостей
- Удаление и чтение ссылки на Nuget в проекте с помощьюhand
EDIT Точное сообщение об ошибке (имя сборки изменено)
System.IO.FileNotFoundException: «Не удалось загрузить файл или сборку» Lib.A.Namespace.1.1, версия = 1.1.7, культура = нейтральная, PublicKeyToken = ноль '.Das System kann die angegebene Datei nicht finden. '
Перевод последней части: "Файл не найден"
EDIT Все зависимости компилируются какAnyCPU для NetStandard2.0