MSBuild время от времени пытается скопировать в проект разные библиотеки DLL с похожим именемC#

Место общения программистов C#
Anonymous
MSBuild время от времени пытается скопировать в проект разные библиотеки DLL с похожим именем

Сообщение Anonymous »

Мы используем MSBuild через командную строку для ежедневных сборок. Сборка завершается сбоем примерно в 70% случаев, но не всегда. Решение содержит несколько публикуемых проектов WCF.
При просмотре журналов сборки мы замечаем, что MSBuild пытается опубликовать первую службу, и если это не удается, сборка пытается скопировать библиотеку классов с именем example.Library.dll. на которые не следует ссылаться нигде с помощью этого сервиса.

Код: Выделить всё

When MSBuild succeeds
скопирует библиотеку классов с именем example.Library.Extensions.dll. Это правильно, поскольку на него ссылаются вспомогательные классы.
Похоже, что MSBuild по какой-то причине неправильно определяет имя файла при построении зависимостей, видя что-то похожее и используя это. Обе эти библиотеки классов являются проектами в решении и упоминаются как ссылки на проекты. Все это происходит на этапе «CopyAllFilesToSingleFolderForPackage».
Вот наша строка сборки

Код: Выделить всё

msbuild.exe solution.sln /p:Configuration=Release
/p:BuildProjectReferences=True /t:"Restore;Build"
/p:IntermediateOutputPath="C:\temp" /p:DeployOnBuild=True
/p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem
/p:DeleteExistingFiles=True /p:publishUrl="C:\publish"
Это происходит с использованием инструментов сборки VS 2019 и 2022 года. После этого мы обновили версию 2019 до последней версии, а когда это не сработало, мы попробовали инструменты сборки VS 2022. Это происходит уже уже месяц и совершенно случайно. Иногда он терпит неудачу постоянно, иногда — только один раз из 5.
Мы также пробовали использовать разные промежуточные пути. Не повезло.

Подробнее здесь: https://stackoverflow.com/questions/782 ... oradically

Вернуться в «C#»