2012-04-19 1 views
1

Я застрял в расширении моего файла проекта msbuild и tfs 2010. То, что я хочу достичь, - это автоматически генерировать документацию для моего исходного кода после строить. Я искал в Интернете и узнал, что файл Microsoft.TeamFoundation.Build.targets определяет множество настраиваемых целей для настольных или командных сборщиков. Одним из них является GenerateDocumentation -Тарт, который я хочу использовать. Проблема заключается в том, что, несмотря на то, что я импортировал этот файл, перегруженные цели не вызываются msbuild. Заголовок моего vcxproj-файл выглядит следующим образом:msbuild не работает должным образом с tfs 2010 и импортом Microsoft.TeamFoundation.Build.targets

<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

после этого я включать целевые команды построения файла с утверждением

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\TeamBuild\Microsoft.TeamFoundation.Build.targets"/>

В самом конце этого файла проекта я попытался перегрузить некоторые цели, как указано в целевом файле TeamFoundation:

<Target Name="GenerateDocumentation"> 
    <Message Text="GenerateDocumentation invoked" Importance="high"/> 
</Target> 

<Target Name="BeforeBuild"> 
    <Message Text="BeforeBuild invoked" Importance="high" /> 
</Target> 

<Target Name="AfterBuild"> 
    <Message Text="AfterBuild invoked" Importance="high" /> 
</Target> 

, но excep t AfterBuild -Target ни GenerateDocumentation, ни BeforeBuild Цель вызывается для локальной сборки или сборки с сервером сборки. Мне что-то не хватает? Правильно ли это DefaultTarget="Build"? Я попытался изменить это на DefaultTarget="DesktopBuild", но затем вызвал msbuild, что привело к множеству ошибок (MSB4018). В файл проекта также импортируется целевой файл $(VCTargetsPath)\Microsoft.Cpp.targets. При удалении этого импорта вызывается цель GenerateDocumentation, но не другие (в том числе ResourceCompile, которые мне тоже нужны). Могу ли я использовать их обоих?

Заранее спасибо ...

ответ

0

, что о добавлении этого в конце вашей задачи построения ...

<CallTarget Targets="GenerateDocumentation"></CallTarget> 
    </Target> 
+0

Хм ... звучит многообещающе. благодаря – AquilaRapax

Смежные вопросы