2014-10-20 78 views
0

我嘗試使用MSBuild腳本從TFS chekout我的文件。但我正在逐漸「退出,代碼爲9009」MSBuild錯誤,而chekout:退出代碼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> 
+0

可能沒有關係,但你爲什麼有源控制下的bin文件夾? – 2014-10-20 08:50:32

+0

您是否有爲該源代碼管理映射設置的工作區? – 2014-10-20 08:50:57

+0

從Visualstudio我已經從TFS下載了文件。我正在使用這些操作的相同文件夾。 除了映射需要從MSbuils提供嗎? – user3902356 2014-10-20 09:36:10

回答

0

按照剛剛TFS的答案,你需要的是在您的工作空間運行TF之前的文件夾中。它可以正常使用VS,但MSBuild純粹你需要在文件夾中。現在你在技術上並不需要在完成獲取時完整的路徑。只是MIME.dll。

出於好奇,你爲什麼運行MSBuild TF get命令?這是在你自動構建?您應該開始使用PowerShell並運行預生成腳本來獲取所需的信息。你也可以使用Nuget與包恢復來獲得編譯所需的任何DLL。

乾杯, ET

+0

是的,我正在使用MSBuild編寫自動生成腳本。 我有以下要求 1.Checkout DLL 2.獲取最新文件3.編譯解決方案4.檢入TFS中的dll。 如果我在MSbuild腳本中使用TF命令。有效的權利或任何其他命令是否有在MSbuild執行TFS操作?沒有第三個包。 – user3902356 2014-10-21 08:16:04

+0

TFS的編譯版本是1(如果在構建定義工作區)/ 2/3默認不會執行4。現在你爲什麼要檢查你的dll?是因爲你實際上正在編譯它們並想推回新建立的?那些DLL用於什麼?他們是否是其他項目的依賴組件?你有沒有看過Nuget? – Etienne 2014-10-22 20:09:03

+0

是的,我正在編譯和簽入新的DLL(如果代碼沒有改變)。這些dll是依賴dll(我們自己的dll)。 Dll不是其他項目的依賴項。這些僅用於我們的應用程序。 – user3902356 2014-10-27 09:59:10