سؤال

أحاول أن أحصل على بناءي لإخراج بعض الملفات (باستخدام Microsoft.sdc.common.tasks) ثم للتحقق منها بعد انتهاء البناء. لكنني لا أستطيع أن أحصل على هذا العمل على الإطلاق، ناهيك عن ذلك وبعد البناء.

whaereabouts يجب أن يعيش هذا النوع من التعليمات البرمجية؟

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="DesktopBuild;MyProjectDbUpdate" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
   <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\TeamBuild\Microsoft.TeamFoundation.Build.targets" />
  <PropertyGroup>
    <TasksPath>C:\Program Files\MSBuild\sdc\</TasksPath>
  </PropertyGroup>
  <Import Project="$(TasksPath)\Microsoft.Sdc.Common.tasks" />

  <Target Name="MyProjectDbUpdate">
    <Message Text="MyProjectDbUpdate checkin start"/>
    <SourceTfs.Checkout  Path="$/MyProject/Code/MyProjectDbUpdate" TfsVersion="2008" workingDirectory="C:\buildagent\MyProject\ContinuousIntegration\Sources\Code" />
    <SourceTfs.Checkin Path="$/MyProject/Code/MyProjectDbUpdate" workingDirectory="C:\buildagent\MyProject\ContinuousIntegration\Sources\Code" Comments="Build checkout/checkin." TfsVersion="2008" Override="Build overrides checkin policy" />
    <Message Text="MyProjectDbUpdate checkin complete"/>
  </Target>


  <ProjectExtensions>

    <ProjectFileVersion>2</ProjectFileVersion>
    <Description>Build</Description>
    <BuildMachine>MYSERVER</BuildMachine>

  </ProjectExtensions>

  <PropertyGroup>
    <TeamProject>MyProject</TeamProject>
    <BuildDirectoryPath>c:\buildagent\MyProject\ContinuousIntegration</BuildDirectoryPath>
    <DropLocation>\\UNKNOWN\drops</DropLocation>
    <RunTest>false</RunTest>
    <RunCodeAnalysis>Never</RunCodeAnalysis>
    <WorkItemType>Bug</WorkItemType>
    <WorkItemFieldValues>System.Reason=Build Failure;System.Description=Start the build using Team Build</WorkItemFieldValues>
    <WorkItemTitle>Build failure in build:</WorkItemTitle>
    <DescriptionText>This work item was created by Team Build on a build failure.</DescriptionText>
    <BuildlogText>The build log file is at:</BuildlogText>
    <ErrorWarningLogText>The errors/warnings log file is at:</ErrorWarningLogText>
    <UpdateAssociatedWorkItems>true</UpdateAssociatedWorkItems>
    <AdditionalVCOverrides></AdditionalVCOverrides>
    <CustomPropertiesForClean></CustomPropertiesForClean>
    <CustomPropertiesForBuild></CustomPropertiesForBuild>

  </PropertyGroup>

  <ItemGroup>
    <SolutionToBuild Include="$(BuildProjectFolderPath)/../../Code/MyProject.sln">
        <Targets></Targets>
        <Properties></Properties>
    </SolutionToBuild>

  </ItemGroup>

  <ItemGroup>
    <ConfigurationToBuild Include="Release|Any CPU">
        <FlavorToBuild>Release</FlavorToBuild>
        <PlatformToBuild>Any CPU</PlatformToBuild>
    </ConfigurationToBuild>

  </ItemGroup>

  <ItemGroup>
  </ItemGroup>

  <PropertyGroup>
  </PropertyGroup>

  <ItemGroup>
  </ItemGroup>
</Project>
هل كانت مفيدة؟

المحلول

تحديد هدفك كهدف افتراضي لن يطلق عليه اسم الفريق، حيث يقوم Screaticy بتعيين الهدف الذي سيتصل به.

حاول إعادة تسمية الهدف إلى أقرم أو تجاوز خاصية GetDependson لتضمين هدفك

<GetDependsOn>
  $(GetDependsOn)
  MyProjectDbUpdate;
</GetDependsOn>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top