Почему TFS не сообщает об ошибках и предупреждениях, созданных в задаче exec MSBuild?

В моем TFSBuild.proj у меня есть следующие команды Exec:

<Target Name="AfterCompile">
    <Exec Command="@echo Program.cs(12,20): warning CS1002: ; missing"/>
    <Exec Command="@echo Program.cs(13,20): Warning CS1003: ;; missing"/>
    <Exec Command="@echo Program.cs(14,20): error CS1004: ;;; missing"/>
</Target>

Сборка TFS завершается с ошибкой, поскольку она анализирует выходные данные и видит в них сообщение об ошибке.

Я получаю следующий вывод в buildlog.txt:

Program.cs(12,20): warning CS1002: ; missing
Program.cs(13,20): warning CS1003: ;; missing
Program.cs(14,20): error CS1004: ;;; missing
c:\bw\10\BuildType\TFSBuild.proj(228,5): error MSB3073: The command "@echo Program.cs(14,20): error CS1004: ;;; missing" exited with code -1.

Но я не получаю сообщения об этих ошибках в деталях результата:

Результат TFS после выполнения задачи, содержащей предупреждения и ошибки

В то время как ошибки и предупреждения сообщаются об обычной сборке проекта со ссылкой на файл, содержащий набор с найденными предупреждениями и ошибками:

Результат TFS после обычной сборки проекта, содержащий предупреждения и ошибки

Любая идея о том, как получить список ошибок и предупреждений, проанализированных из вывода exec и в отчет TFS?


person Serge van den Oever    schedule 10.02.2010    source источник


Ответы (1)


Решил свой вопрос следующим образом:

Я создал файл myexec.proj, который выполняет Exec.

В TFSBuild.proj я выполняю решение, используя <SolutionToBuild Include="myexec.proj"/>. Вывод теперь автоматически анализируется на наличие ошибок и предупреждений.

person Serge van den Oever    schedule 15.02.2010
comment
Если это ответило на ваш вопрос, отметьте его как принятый ответ. - person Ryan Gates; 29.09.2015