Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tfs MSbuild在chekout:退出时出错,代码为9009_Tfs_Msbuild - Fatal编程技术网

Tfs MSbuild在chekout:退出时出错,代码为9009

Tfs MSbuild在chekout:退出时出错,代码为9009,tfs,msbuild,Tfs,Msbuild,我正在尝试使用MSBuild脚本从TFS中检出我的文件。但我要带着代码9009离开 我的代码如下: <?xml version="1.0" encoding="utf-8"?> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build"> <PropertyGroup> <TfCommand> &quot;C

我正在尝试使用MSBuild脚本从TFS中检出我的文件。但我要带着代码9009离开

我的代码如下:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
<PropertyGroup>
 <TfCommand>
    &quot;C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\tf.exe&quot;
 </TfCommand>
</PropertyGroup>

<Target Name="Build">
 <Exec Command="$(TfCommand) checkout &quot;$/ApplicationSharedServices/release/dev_branch/renderer/bin/MIME.dll&quot;"/>
</Target>

</Project>

根据Just TFS的回答,在运行TF之前,您需要在工作区中的文件夹中。它可能适用于VS,但对于MSBuild pure,您需要位于文件夹中。现在,从技术上讲,您不需要在执行get then时放置完整路径。只是MIME.dll

出于好奇,为什么要运行MSBuild TF get命令?这在你的自动构建中吗?您应该开始使用PowerShell并运行预构建脚本以获取所需信息。您还可以将Nuget与包还原一起使用,以获取编译所需的任何DLL

干杯,
ET

可能不相关,但为什么在源代码管理下有一个bin文件夹?是否为该源代码管理映射设置了工作区?我已从Visualstudio下载了TFS中的文件。我正在使用这些操作的相同文件夹。除了需要从MSbuils提供的映射之外?是的,我正在使用MSBuild编写自动生成脚本。我有以下要求1。签出DLL 2。获取最新文件3。编译解决方案4。从TFS签入DLL。如果在MSbuild脚本中使用TF命令。MSbuild中是否有对TFS执行操作的有效命令或任何其他命令?没有第三个包。TFS build在构建定义工作区中执行1,默认情况下/2/3不会执行4。现在为什么要签回DLL?是不是因为您实际上正在编译它们,并且想要推回新构建的?那些DLL是用来做什么的?它们是其他项目的依赖组件吗?你看过Nuget了吗?是的,我正在编译并签入新的DLLSI,如果代码没有更改。那些DLL是依赖性DLL—我们自己的DLL。Dll不依赖于其他项目。这些仅用于我们的应用程序。我已在URL:中发布了我的整个脚本。请看一看,让我们重新定位这个问题,您是否使用TFS构建服务?如果是,那么您应该让它为您完成所有的工作,签出、构建等,然后您可以编写一个powershell脚本,只将您关心的DLL签入回TFS。若否,原因为何?