Поскольку у меня есть несколько сборок, совместно использующих некоторые сборки, содержащие общие задачи сборки, у меня есть один файл TFSBuild.proj для всех сборок и импорт различных целей в зависимости от сборки, например:
<Project DefaultTargets="DesktopBuild" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
<Import Project="Build_1.targets" Condition="'$(BuildDefinition)'=='Build_1'" />
<Import Project="Build_2.targets" Condition="'$(BuildDefinition)'=='Build_2'" />
<Import Project="Build_3.targets" Condition="'$(BuildDefinition)'=='Build_3'" />
</Project>
Каждая цель дляв конкретной сборке есть ваш обычный контент для файла типа сборки, но в моем случае я также ссылаюсь на некоторые задачи внутри сборок, отмеченных в той же папке, что и TFSBuild.proj в системе управления версиями.Я хотел добавить папки, содержащие некоторые цели тестовой сборки, так как моя папка была немного заполнена и загромождена.Ниже показано, что я имею в виду.
$(TFS project)\build\
TFSBuild.proj
Build_1.targets
...
Assembly1.dll
Assembly2.dll
...
Folder\
Test_target_1.targets
....
Однако, когда я указывал свою сборку, я обнаружил, что Test_target_1.targets и другие файлы в папке не копируются в каталог сборки, тогда как TFSBuild.proj и другиекак бы копировались файлы в корневом уровне папки типа сборки.Это привело к тому, что моя тестовая сборка не смогла ссылаться на файлы внутри папки, что привело к немедленной ошибке моей сборки.Другими словами,
$(TFS project)\build\
TFSBuild.proj
Build_1.targets
...
Assembly1.dll
Assembly2.dll
...
Folder\
(nothing here)
Я понимаю, что самым простым обходным путем было бы избавиться от папки и переместить все ее содержимое в папку сборки, но мне бы очень хотелось, чтобы вообще была папкавозможный.Заранее спасибо за помощь.