Команда Delphi IDE Project "Clean" - что она делает? - PullRequest
15 голосов
/ 07 апреля 2009

Запуск Delphi 2007 (и, вероятно, других версий, я полагаю), если я щелкаю правой кнопкой мыши по проекту в Менеджере проектов (в данном случае это либо EXE-файл BPL), выше есть команда «Очистить» Компилировать и строить. Что именно это делает?

Ответы [ 3 ]

22 голосов
/ 07 апреля 2009

«Очистить» сборку означает удалить все промежуточные и выходные файлы, сгенерированные компилятором. Некоторые компиляторы или IDE также имеют опцию «clean & build» или «rebuild all», которая по существу выполняет очистку с последующей сборкой.

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

Также рекомендуется выполнить очистку перед сборкой версий по той же причине.

10 голосов
/ 08 апреля 2009

Да, он удаляет файлы DCU и EXE-файл, НО не очищает:

  • DCU в других каталогах, кроме каталога проекта (даже если PAS добавлены в проект),
  • .MAP файл
  • .RES-файлов (составлено из соответствующих .RC-файлов)
  • .DRC файл
  • .TLB файл
  • ...

Итак, ... реализация очень, очень плохая, ....

Использование Delphi 2009.

9 голосов
/ 07 апреля 2009

Clean - это одна из команд MSBuild, которая теперь используется как базовый движок для каждой компиляции или сборки. Эта команда удаляет как временные файлы (например, DCU), так и окончательный вывод (например, EXE).

...