MSBuild에서 다양한 프로젝트 대상을 처리하고 있으며 매우 유연하다는 것을 알게되었습니다. (또한 CI 시스템의 가능성을 이해하는 데 도움이됩니다.)MSBuild : 사용자 지정 작업을 작성하고 호출하지만 MSBuild에서 TaskFactory가 필요하다고 생각합니다.
SubWCRev를 호출하고 출력을 구문 분석하는 사용자 지정 작업을 작성한 프로젝트의 현재 SVN 수정본을 가져와야합니다.
<Target Name="Version" BeforeTargets="BuildDatabase">
<xxx.Elements.Build.MSBuildTasks.SubWCRev WorkingCopyDir="$(ProjectDir)..">
<Output TaskParameter="LastCommittedRevision" ItemName="LastCommittedRevision" />
<Output TaskParameter="MixedRevisionRangeMinimum" ItemName="MixedRevisionRangeMinimum" />
<Output TaskParameter="MixedRevisionRangeMaximum" ItemName="MixedRevisionRangeMaximum" />
<Output TaskParameter="HasLocalModifications" ItemName="HasLocalModifications" />
</xxx.Elements.Build.MSBuildTasks.SubWCRev>
<Message Text="Revision is @(LastCommittedRevision)" />
</Target>
내 문제는 MSBuild에서 내가 this document는 선택 사항입니다 말한다 TaskFactory 속성을 사용하는 주장이다 ... 나는 다음 작업을 실행
<UsingTask TaskName="xxx.Elements.Build.MSBuildTasks.SubWCRev" AssemblyFile="D:\dev\xxx_presentation\Build\xxx.Elements.Build.dll">
<ParameterGroup>
<LastCommittedRevision ParameterType="System.Int" Required="False" Output="True" />
<MixedRevisionRangeMinimum ParameterType="System.Int" Required="False" Output="True" />
<MixedRevisionRangeMaximum ParameterType="System.Int" Required="False" Output="True" />
<HasLocalModifications ParameterType="System.Boolean" Required="False" Output="True" />
</ParameterGroup>
</UsingTask>
:
나는이 요소를 사용하여 참조 . . 그리고 나는 또한 TaskFactory는 내가 관심이 아니에요 인라인 작업에 특히 것으로보고있다
오류 메시지는 다음과 같습니다
필요한 속성 "TaskFactory"요소 UsingTask에서 비어 있거나 누락되었습니다.
어디로 잘못 가고 있습니까?
은 (그리고 그런데, 나는 우수한 것으로 MSBuild Sidekick 3을 발견하고 꽤 복잡한 스크립트가 될 수 있는지의 저항을 감소하고 있습니다.) 당신이 전통적인 방식으로 UsingTask을 지정하는 경우
아, 고마워. 나는 그것이 그렇게 될 것이라고 생각했다. –