VS2010: Как выполнять ‘Publish’ из Team Build если у вас есть C++ проекты?
16/11/2009 Оставьте комментарий
У меня есть solution, в котором находятся разнородные проекты — C#/C++, EXE/DLL/Library. В общем, практически весь букет. Да, и самое главное — там ещё есть Сloud Service, т.е. Azure. И всё это собирается при помощи Team Build 2008.
В какой-то момент мне очень захотелось получать в результате сборки готовый пакет для развёртывания в Azure. Для этого надо выполнять target «Publish» для .ccproj проектов. Добавил в tfsbuild.proj следующую строчку:
<SolutionToPublish Include=«$(SolutionRoot)\MySolution.sln«/>
Всё было бы хорошо, но:
- По-умолчанию MSBuild считает необходимым публиковать все EXE проекты. Сделано это было для .Net приложений. В этом случае он генерирует ClickOnce manifest.
- Начиная с версии 10, в Visual Studio все C++ проекты перешли на MSBuild (ура, VCBUILD прощай!), но в данном случае это помешало.