Visual Studio (2008) "Чистое решение"

Что делает этот вариант? Он доступен из меню "Построение".

Ответ 1

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

Ответ 2

Он удаляет весь код объекта, сгенерированный во время предыдущей компиляции/сборки. Он удаляет все файлы ниже: -

*. obj - объектный код

*.pdb - файл отладки databse программы

*. bsc - исходный браузер databse

*. ilk - инкрементный файл компоновщика

*. sbr - промежуточный файл исходного браузера

*. idb - файл зависимостей rebuild

*. lib - файл библиотеки

*. exe - исполняемый

JFYI - Даже команда Rebuild All сделает все это, а затем продолжит сбор полного набора исходных файлов.

-AD

Ответ 3

Я хотел, чтобы это было комментарием, но, по-видимому, нужно 50 rep.

Чтобы предупредить других, я считаю, что решение по перестройке не делает себя чистым. Я часто не буду чистить его и строить/перестраивать его после того, как он будет работать - я думаю, что его перестроить само по себе полностью компилирует без очистки и отменяет все, но не избавляется от дополнительных функций.

Не смотрел, что перестраивает код мудро, просто общее наблюдение, если кто-то другой имеет ту же проблему.

Ответ 4

Это старый пост, но я подумал, что это стоит упомянуть. При кодировании Silverlight у меня обычно есть Blend и VS2010 одновременно. Из-за этого иногда VS2010 волнуется, и IntelliSense не может найти, где материал или что-то, что приводит к ложному подсвечиванию большого количества ошибок.

Очистка решения устраняет это.

Ответ 5

Стирает файлы, созданные во время процесса компиляции. Эффективно заставляет полностью перекомпилировать/строить в следующий раз.

Ответ 6

осторожно, когда вы очищаете решение; когда вы очищаете решение, и если вы ссылаетесь на библиотеку (скажем nhibernate) в вашем проекте, и если эта библиотека имеет зависимость (например, iesi.collections), то вы увидите, что iesi.collections будет удалена, даже если вы перестроили и вам придется снова поместить эту DLL в свою папку. или вы также можете ссылаться на iesi.collections и выбрать copy-local: yes option из своих свойств

Ответ 7

FYI, ни Clean, ни Rebuild не удалят файлы без сборки, например файлы, скопированные во время команды pre-build. Я был смущен этим!