error MSB4062: The "TfsTasks.ExecMulti" task could not be loaded from the assembly

Dec 17, 2010 at 1:06 AM

I'm getting this error:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\TeamBuild\BuddyBuildExtensions.targets(298,9): error MSB4062: The "TfsTasks.ExecMulti" task could not be loaded from the assembly C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\BuddyBuild.Tasks.dll. Could not load file or assembly 'file:///C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\BuddyBuild.Tasks.dll' or one of its dependencies. The system cannot find the file specified. Confirm that the <UsingTask> declaration is correct, and that the assembly and all its dependencies are available.

I've verified the file exists at the location specified

Here is the BuddyBuildExtensions.targets

    <UsingTask TaskName="TfsTasks.UpdateBuddyBuildWorkItem"
               Condition=" '$(IsBuddyBuildV2)'=='true' "
               AssemblyFile="$(TeamBuildRefPath)\BuddyBuild.Tasks.dll" />
    <UsingTask TaskName="TfsTasks.ExecMulti"
               Condition=" '$(IsBuddyBuildV2)'=='true' " 
               AssemblyFile="$(TeamBuildRefPath)\BuddyBuild.Tasks.dll" />

    <PropertyGroup Condition=" '$(IsBuddyBuildV2)'=='true' ">
        <BuddyBuildTaskVersion>1.0.85.0</BuddyBuildTaskVersion>
    </PropertyGroup>

...

Line 298

        <ExecMulti Command="$(TfCommand)"
          ArgumentsTemplate=" unshelve {0} /recursive /noprompt"
          WorkingDirectory="$(TfUnshelveWorkingDirectory)"
          ParametersList="$(ShelvesetList)"
          Delimiter="|"
          IgnoreExitCode="true">
            <Output PropertyName="UnshelveExitCode"
              TaskParameter="ExitCode" />
        </ExecMulti>

Any ideas whats going on?  Really confused since I've verified the file exists at the exact location specified in the error message.

Coordinator
Dec 19, 2010 at 10:08 AM

Hi Jeff,

This error typically indicates that TFSExtensionsTasksSetup.msi was not installed on the TFS Build Agent machine. Note that TFSExtensionsTasksSetup.msi should be installed on your Team Build 2008 Build Agent machine not on your local machine (unless your local machine has Team Build 2008 installed on it). I know it's a silly question, but can you confirm that you ran TFSExtensionsTasksSetup.msi on the TFS Build Agent machine and not on your local machine?