2017-02-17 107 views
1

我有一个解决方案,它有几个VC++项目。我正在尝试使TFS每周构建一次。我已经建立了TFS Build控制器和代理。我使用DefaultTemplate.xaml文件创建了一个构建定义,并且我可以成功构建一些项目。如何在TFS 2013构建定义中使用默认项目输出位置?

问题是我的项目依赖于已经签入调试/释放文件夹的一些库。 TFS正试图将项目输出(dll和exes)放到$(SolutionDir)\ Binaries目录中。由于依赖库不存在于此位置,因此TFS构建失败。

我想要做的是使用我自己的项目输出位置,并以某种方式将输出文件复制到服务器中的某个位置。

我该怎么做?

谢谢

回答

1
  1. 它不建议在图书馆TFS检查,你可以使用的NuGet恢复包。

  2. 对于构建输出,您可以在构建定义中指定放置文件夹并将输出复制到放置文件夹。

enter image description here

  • 您还可以检查在复制输出的脚本,并指定在您的XAML构建定义一个生成后脚本路径。 This脚本从典型位置收集一些典型的二进制类型,并将它们复制到TFBuild从其中复制并下载到暂存位置的文件夹。在网站查询更多有关运行在您的XAML构建过程的脚本: https://msdn.microsoft.com/library/dn376353%28v=vs.120%29.aspx
  • +0

    (1)不帮助我。依赖库不是众所周知的库。他们是行业特定的,昂贵的。这是他们一直在做的方式。 (2)我已经这么做了。 (3)这解决了我的问题。正如你指出的那样,我使用了PowerShell脚本。但是,我的默认模板中没有Post Build脚本路径。所以,我不得不编辑我的模板并调用脚本。谢谢! – cbr

    0

    我建议编辑您的构建定义。根据流程部分,设置MSBuild参数

    /p:GenerateProjectSpecificOutputFolder=true 
    

    如下:

    enter image description here

    +0

    使用此选项只是把dll文件到一个名为其项目目录,在相同的放置位置。 – cbr

    相关问题