Я работаю над сценарием MSBuild, задачей которого является построение решения, а затем копирование результата сборки из двух проектов в унифицированный каталог. Достаточно просто.Смутно о содержании MSBuild ItemGroup
Я делаю это с Копия Задача. Как так:
<ItemGroup>
<OutputFiles1 Include="Project1\bin\Release\*.*" />
<OutputFiles2 Include="Project2\bin\Release\*.*" />
</ItemGroup>
<Target CopyOutput>
<Copy SourceFiles="@(OutputFiles1)" DestinationFolder="DeployOutput" />
<Copy SourceFiles="@(OutputFiles2)" DestinationFolder="DeployOutput" />
</Target>
Проблема я испытываю такова: два ItemGroup элементы содержат содержимое каталогов, когда скрипт сборки начинается, а не содержимое каталогов, когда решение построить заканчивается.
Так, например, если я добавлю ссылку в Project1 к новой сборке, а затем запустите сборку, каталог DeployOutput не содержит эту новую сборку, потому что она не была в каталоге вывода проекта при запуске сборки , Но если я снова запустил сборку , файл будет там и будет скопирован.
Похоже, что это поведение по дизайну, но я не уверен, как выполнить свою задачу без появления в пакетном файле или что-то в этом роде для копирования.
Спасибо. Моя подруга также благодарит вас, что мне больше не придется лысать от разочарования. –
В таком случае: скажите привет вашей девушке от меня, я хочу здесь еще много дней без разочарования:] – stijn