MSBuild - Добавление файлов для «очистки» в сборке. - PullRequest
18 голосов
/ 17 августа 2010

В рамках одного из моих проектов есть задачи "BeforeBuild", которые в конечном итоге генерируют некоторые файлы.В частности, он компилирует небольшой статический класс (включенный в проект как «не компилировать») в собственный исполняемый файл, а затем выполняет его, передавая внешний входной файл, выводящий новый сгенерированный класс, который будет включен в проект.

Я запрограммировал его для помещения промежуточных файлов в проекты $ (OutDir), но обнаружил, что в «Перестроить» (и, в конечном итоге, «Очистить») эти файлы не извлекаются.Подумав, я понял, что последний сгенерированный класс, который помещается прямо в $ (ProjectDir), вероятно, следует удалить и в «Очистить».

Некоторые исследования Microsoft.Common.targets показали, что некоторые«основной список» из промежуточного пути (obj \ build \ assembly.FileListAbsolute.txt), который запрашивался для удаления файлов.

Существует ли какой-либо стандартный метод добавления моих новых файлов в этот список в MSBuild дляочищены ли они, или эти вещи лучше подходят для переопределения цели "BeforeClean" (или "AfterClean")?

1 Ответ

17 голосов
/ 17 августа 2010

См. Расширение процесса очистки для получения подробной информации о механизме FileWrites (который является системой, пишущей FileListAbsolute.txt, который вы видите) в этой статье MSBuild, написанной Хашими.И получите книгу прямо сейчас, если вы собираетесь потратить более 2 часов на написание сценариев сборки в следующем году.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...