Visual Studio продолжает строить все - PullRequest
6 голосов
/ 07 июня 2010

У меня большой файл .sln со многими проектами.

Я только что внес изменение в проект A, и он создает девять других проектов, на которые ссылается проект A, но в которых не было изменений кода.

Есть ли способ ускорить этот процесс?

Ответы [ 6 ]

2 голосов
/ 28 апреля 2014

Это происходит, когда у проекта есть файл, который на самом деле не существует.
Проект не может определить, был ли файл изменен (потому что его там нет), поэтому он перестраивается.

Просто посмотрите на все файлы в проекте и найдите тот, у которого нет расширяемой стрелки рядом с ним.

2 голосов
/ 07 июня 2010

Разделяй и властвуй. Ограничьте время сборки вашего решения, создавая дополнительные решения, содержащие логические подмножества проектов, над которыми вы работаете. Это ограничивает ваши возможности и ускоряет сборку.

См. Модель секционированного одиночного решения в этой статье MSDN: http://msdn.microsoft.com/en-us/library/ee817674.aspx

Ключевая цитата из статьи:

Separate solution files allow you to work on smaller subsystems within your overall system 
but retain the key benefits of project references. Within each subsolution file, 
project references are used between constituent projects.
1 голос
/ 07 июня 2010

Выбор 'build only' при щелчке правой кнопкой мыши на проекте A должен помочь.Я не уверен, есть ли способ не допустить сборки проектов, на которые ссылаются, также и при построении решения (что делает стандартная команда build).

0 голосов
/ 26 июля 2016

Измените детализацию сборки на подробные и посмотрите, что там написано. В моем случае мне сказали, что проект не обновлен из-за отсутствия файла.

0 голосов
/ 30 марта 2012

Еще одна вещь, которую нужно искать, потому что это только что произошло со мной, заключается в том, что если вы синхронизируете свое представление с помощью ClearCase , когда ваше решение открыто и часть вашего кода была обновлена ​​синхронизацией, иногда это временные метки на файлах неправильно, поэтому он продолжает думать, что ваши исходные файлы были изменены, и каждый раз компилирует ваш проект.

Чтобы исправить это, мне пришлось закрыть решение и снова открыть его, и оно вело себя как ожидалось.

0 голосов
/ 07 июня 2010

Убедитесь, что зависимости вашего проекта верны. Щелкните правой кнопкой мыши по проекту и перейдите к «Зависимости проекта». Убедитесь, что каждый проект зависит только от минимального набора других проектов, необходимых для связи.

...