TF270003:无法复制

时间:2014-07-10 19:33:00

标签: tfs msbuild visual-studio-2013 tfs2010

这适用于:

  • Visual Studio 2013
  • Team Foundation Server 2010

错误:

  

TF270003:无法复制。确保源目录\\ TFSFileStore \ TFSBuild \ Xxx \ Yyy \ _PublishedWebsites \ Zzz存在并且您具有相应的权限。

_PublishedWebsites不存在。问题是它不是由MSBuild创建的。即使我要手动创建这些文件夹,也不会将文件复制到那里。

我们刚刚从Visual Studio 2010升级到2013年。


在仔细阅读日志文件后,好像使用了错误的MSBuild。它正在使用:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe

什么时候应该使用:

C:\Program Files (x86)\MSBuild\12.0\Bin\amd64\MSBuild.exe

有关如何让TFS使用正确的MSBuild可执行文件的任何想法吗?


我关注http://hamidshahid.blogspot.com/2013/10/building-visual-studio-2013-solutions.html

  

1)查找MSBuild活动的所有实例。该活动在构建模板中命名为“Run MSBuild for Project”,如下所示:

     

enter image description here

     

2)将活动的ToolsPath更改为指向MSBuild 12.0 exe文件,如下所示:

     

enter image description here

但是......登录诊断模式显示以下内容用于运行MSBuild for Project:

Initial Property Values
    AdditionalVCOverrides = 
    CommandLineArguments = /p:SkipInvalidConfigurations=true /tv:12.0
    Configuration = Release
    GenerateVSPropsFile = True
    LogFile = 
    LogFileDropLocation = \\Xxx\Yyy\Zzz\logs
    MaxProcesses = 1
    OutDir = E:\Builds\Xxx\Binaries
    Platform = Any CPU
    Project = E:\Builds\Xxx\Xxx.sln
    ResponseFile = 
    RunCodeAnalysis = AsConfigured
    Targets = 
    TargetsNotLogged = String[] Array
    ToolPath = 
    ToolPlatform = X86
    Verbosity = Diagnostic

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe 

不知何故,我设置的ToolPath属性:

C:\Program Files (x86)\MSBuild\12.0\Bin\amd64\

被覆盖并设置为空。

3 个答案:

答案 0 :(得分:2)

如果您的构建过程模板来自早期版本的TFS,则可能需要编辑模板并修改MSBuild活动属性。

如果您的构建服务器正在运行:

Visual Studio Team Foundation Server 2013:将MSBuild活动ToolVersion属性设置为12.0

Visual Studio Team Foundation Server 2012:将MSBuild ToolPath属性设置为MSBuild 12路径的路径。在许多情况下,此路径为C:\ Program Files(x86)\ MSBuild \ 12.0 \ Bin \(32 -bit)或C:\ Program Files(x86)\ MSBuild \ 12.0 \ Bin \ amd64(64位)。您还必须在构建代理上安装Visual Studio 2013。

MSDN Source

答案 1 :(得分:2)

在我的构建定义中,我最终创建了一个序列变量,我将其称为 MSBuildToolPath ,并将其值设置为 C:\Program Files (x86)\MSBuild\12.0\Bin 即可。

仍然在我的构建定义中,我从那里找到了每个 Run MSBuild for Project 活动,并将 ToolPath 属性设置为前面提到的 { {1}} 变量。

使用正确的版本,MSBuild 终于

然而,我的幸福并没有持续很长时间,因为下一个问题是 MSBuild 无法找到 MSBuildToolPath 文件。

经过一些研究,我们发现我们可以创建 *.metaproj 环境系统变量,并将其值设置为 MSBUILDEMITSOLUTION 强制创建该文件。

完成后,我们成功构建了 1 文件夹,并将其部署到我们的网络服务器...... 终于!

答案 2 :(得分:0)

排队新版本时,请在参数选项卡

下设置私人投放位置