Where can I find Microsoft.TeamFoundation.Build.Client in Visual Studio 2015?

42,588

Solution 1

Microsoft.TeamFoundation.Build.Client.dll still ships with VS 2015. For the 2015 release, we have removed the client OM DLLs from the GAC.

In the RC release you can find the DLL in c:\program files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer. It's kind of an obscure place.

The TFS 2015 client OM RTM NuGet package is now available (also works for Visual Studio Online):

.NET client libraries for Visual Studio Online (and TFS)

Solution 2

I do show a Microsoft.TeamFoundation.Build.Client assembly version 12.0.0.0 that can be referenced. You may need the assembly from Visual Studio 2013.

I have updated all my build processes from TFS and VS 2013 to 2015 and they run, yet I may not have custom tasks, etc. as you do.

Visual Studio 2015 does say it supports all previous build process features (they now refer to as XAML Builds), even though they have re-written the build process. See the TFS 2015 release notes for details: https://www.visualstudio.com/news/tfs2015-vs#vNextBuild

Share:
42,588
Gary Howlett
Author by

Gary Howlett

Updated on August 28, 2020

Comments

  • Gary Howlett
    Gary Howlett over 3 years

    I have a clean windows installation with just Visual Studio 2015 installed and I'm looking to find the Microsoft.TeamFoundation.Build.Client assembly?

    I'm wondering if it has now been made obsolete with the upcoming vNext Build or if the namespace moved? or something else? The MSDN documentation only goes up to Visual Studio 2013 and search for the dll on disk produced no results.

    when I move to VS2015 and TFS2015 id wish to continue to use the classic build system - I guess I could use the rest API in TFS2015 but rather not have to port all the code of our custom activities and MSBuild tasks just yet.

  • Morten Frederiksen
    Morten Frederiksen almost 9 years
    Will there be a Team Foundation Server 2015 Object Model installer that installs in the GAC? Or will there be NuGet packages for all Microsoft.TeamFoundation.* assemblies?
  • Buck Hodges
    Buck Hodges almost 9 years
    It will not install the assemblies in the GAC. We no longer want to have them in the GAC to allow processes running on the machine to load the appropriate version. It will be a NuGet package with all of the client OM assemblies (the ones you have today plus new stuff for 2015).
  • Philippe
    Philippe almost 9 years
    @BuckHodges Are the nuget packages released? Because I can't find them on the nuget repository :(
  • Buck Hodges
    Buck Hodges almost 9 years
  • Daniel Eriksson
    Daniel Eriksson almost 9 years
    Why would you not want the assemblies in GAC for this Buck Hodges?
  • Gary Howlett
    Gary Howlett almost 9 years
    For some reason the Microsoft.TeamFoundation.ExtendedClient.targets in the nugget package didn't add the required Import element so was missing the Microsoft.WITDataStore*.dlls
  • Buck Hodges
    Buck Hodges over 8 years
    By having them in the GAC, the server and the client were coupled. At some point I'd like to ship Team Explorer as a VSIX, and you can't do that with the DLLs being GAC'ed.
  • Cameron Taggart
    Cameron Taggart over 8 years
    What about Microsoft.TeamFoundation.Build.Workflow? Will that be added to NuGet?
  • Buck Hodges
    Buck Hodges over 8 years
    Gary, we've updated the package with the missing WIT DLLs. Cameron, I've asked the engineer to follow up on the Workflow DLL.
  • Chris Patterson
    Chris Patterson over 8 years
    Given the Worflow dll is only useful inside of the XAML build agent and controller and you shouldn't redist it, what is the scenario for including it in the NuGet package?
  • Buck Hodges
    Buck Hodges over 8 years
    We aren't planning to add the Build.Workflow DLL to the package. What's your scenario?
  • bryanmac
    bryanmac over 8 years
    @Cameron, there are no plans to add the workflow binary to the client nuget package. It's only useful when working with build workflows (not a client) and there's no scenarios where you would want to redistribute it.
  • Cameron Taggart
    Cameron Taggart over 8 years
    I wanted to compile a custom workflow. I just need to be able to reference the dll when building. I wrote a PowerShell script to copy the dll's since they are not in NuGet. github.com/ctaggart/SourceLink/blob/master/Tfs/lib/…
  • Buck Hodges
    Buck Hodges over 8 years
    Thanks for the explanation. We decided to draw the line on things that you'd need at runtime.
  • Jason
    Jason over 8 years
    How do custom activities load the require binaries?
  • Jason
    Jason over 8 years
    In particular I am looking for the strongly named Lib2GitSharp, Microsoft.TeamFoundation.Build.Activities, Microsoft.TeamFoundation.Git.Common and many other references that were previously in the GAC.
  • Buck Hodges
    Buck Hodges over 8 years
    I'm not sure whether it will meet your needs given strong naming, but you can use the LibGit2Sharp package nuget.org/packages/LibGit2Sharp. We're not going to add the Build.Activities DLL as its not general useful to applications (though you may need it for what you are doing). The Git.Common DLL has gone away in 2015. The Git.Client DLL may have what you are looking for.
  • Gary Howlett
    Gary Howlett over 8 years
    I would also like to have a package with the Microsoft.TeamFoundation.Build.Workflow.dll - this I because I have custom workflow activities and client side tooling that copies build definitions. For example I need access to evaluate the process parameters and have access to *Spec types. If I add a reference to the assembly in the location you mention on my dev box the path is different to the build controller so a separate package would help avoid this issue of me having to check assembly into source control.
  • Isak Savo
    Isak Savo over 8 years
    How am I supposed to create a visual studio extension that references TFS client dlls AND supports both visual studio 2013 and 2015?
  • Germán Martínez
    Germán Martínez over 8 years
    @BuckHodges I think Isak Savo asks a great question :) Is there any way to do it?
  • Buck Hodges
    Buck Hodges over 8 years
    I'd suggest taking look at blogs.msdn.com/b/phkelley/archive/2013/08/12/… for an approach that could work for you.
  • Nikhil
    Nikhil about 8 years
    @BuckHodges The NuGet packages almost all have version 12.* of the DLLs however VS2015 ships with version 14* of these DLLs. Is there a plan to update the NuGet packages with the latest versions please?
  • Buck Hodges
    Buck Hodges about 8 years
    I think you are using the bad packages, which we still need to get cleaned up (poked someone about it again today). Make sure you are using these. nuget.org/packages/Microsoft.VisualStudio.Services.Client nuget.org/packages/… nuget.org/packages/Microsoft.TeamFoundationServer.Client nuget.org/packages/… nuget.org/packages/…