tfstfsbuildmicrosoft.build

Microsoft.Build.Tasks.v3.5 fails at copying dlls from dll.refresh references


I'm constantly getting an error on the TFS2010 build server, due to an inexistent DLL file. It update this file through dll.refresh from another folder, both folders are mapped in the workspace.

I opened the log, and found this:

Task "CombinePath"

Done executing task "CombinePath".

Task "Copy" skipped, due to false condition; (!Exists('%(Project_B71059A4-EFC4-479F-B41A-1364F74F09CB_References.Identity)')) was evaluated as (!Exists('xxx\xxx\..\..\..\..\Dependencias\xxx\xxx.dll')).

Task "Copy" skipped, due to false condition; (!Exists('%(Project_B71059A4-EFC4-479F-B41A-1364F74F09CB_References.Identity)')) was evaluated as (!Exists('xxx\xxx\..\..\..\..\Dependencias\xxx.dll')).

Task "Copy" skipped, due to false condition; (!Exists('%(Project_B71059A4-EFC4-479F-B41A-1364F74F09CB_References.Identity)')) was evaluated as (!Exists('xxx\xxx\..\..\..\..\Dependencias\xxx.dll')).

It seems like it's parsing \..\..\ as folder names instead of locating the right path.

What to do ?


Solution

  • Solved:

    Primary reference "xxx, Version=3.5.40412.0, Culture=neutral,   PublicKeyToken=28f01b0e84b6d53e".      
    Resolved file path is "C:\Builds\xxx\xxx\xxx\xxx\xxx.dll".
    Reference found at search path location "{RawFileName}".
    This reference is not "CopyLocal" because it's registered in the GAC.
    

    Someone mistakenly put the dll in the gac, so it was not copying.