У меня довольно большое решение (около 50 проектов, все C#), которые я создаю в VS 2012 (обновление 4). Я заметил, что после завершения полной перестройки из VS, непосредственно за которой следует сборка (удар F6), один проект перестраивается, хотя я ничего не трогал.Visual Studio (2012, 2015) восстанавливает проект, хотя ничего не изменилось
Второй вызов сборки правильно определяет, что все проекты актуальны.
Настройка вывода MSBuild для диагностики и изучения выхода первой сборки вызова показывает это:
NuGet package restore started.
Restoring NuGet packages for solution XXX.
[... some boring lines on NuGet Package restore]
All packages are already installed and there is nothing to restore.
NuGet package restore finished.
Project 'YYY' is not up to date. Last build was with unsaved files.
------ Build started: Project: YYY, Configuration: Debug Any CPU ------
Build started 21-11-2013 21:20:54.
Я особенно заинтригован сообщением, что Project 'YYY' is not up to date. Last build was with unsaved files.
У меня нет несохраненных файлов. Интересно, что и Google, и Bing не дают ни единого удара при поиске этого сообщения.
Любые подсказки о том, что может вызвать это? Как я могу отладить эту часть процесса сборки? Я полагаю, что эта часть процесса сборки еще до вызова MsBuild (по крайней мере, новые функции восстановления пакета NuGet появляются до того, как MsBuild вызывается, я считаю, что MsBuild запускается из строки «Начал сборку».
Имеет ли этот проект «особые» настройки в отношении других? Что это за проект? – Micha
Просто обычная библиотека классов.Я проверил элементы с «Копировать в выходной каталог» - установка «Копировать всегда», ни одна не найдена (они могут испортиться). Я также удалил все * .suo файлы, чтобы быть уверенным. По какой-то причине VS продолжает думать, что в некотором файле есть несохраненные изменения, и я не могу понять, что. –
Хм ... может быть, какие-то особые отношения или зависимости к другим проектам ... – Micha