2011-07-14 68 views
0

我有一個PrimaryBuild.targets文件,我通過Team Foundation Server構建定義與MSBuild構建。該文件調用其他msbuild任務來構建組件中包含的所有VB解決方案以及許多其他目標。VS2010編譯器自動生成不需要的.vsprops文件在MSBuild項目

(MSBuild的PrimaryBuild.targets)

/t:FullBuild;Deploy /p:Decorator=NTBMDev;DropLocation=\\xxx.xxx.xxx.xxx\;CurrentBranch=DEV;Configuration=Debug 

當我從批量建造它在我的本地計算機上,一切似乎都很好。當我在構建服務器上構建它時,會在構建過程中創建一個PrimaryBuild.target.vsprops文件。它覆蓋輸出目錄爲我的項目和所有輸出文件複製到錯誤的文件夾(我的部署目標無法找到它)

<?xml version="1.0" encoding="utf-8"?> 
<VisualStudioPropertySheet ProjectType="Visual C++" Version="8.00" Name="Team Build Overrides" OutputDirectory="C:\Builds\7\NexTra\BMDEV\Binaries" /> 

有在構建過程中的任何地方建立無VC++項目,我只用VB項目或寫我自己的目標。此外,這是在服務器上構建時創建.vsprop的唯一組件,其他組件可以正常工作。我甚至不知道應該在哪裏搜索才能找到,爲什麼這個項目創建了這個文件。
如果有幫助 - 這是CoreCompile從我的日誌:

c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Vbc.exe /noconfig /baseaddress:11000000 /imports:Microsoft.VisualBasic,System,System.Collections,System.Data,System.Diagnostics /optioncompare:Binary /optionexplicit+ /optionstrict+ /nowarn:42353,42354,42355 /optioninfer+ /nostdlib /removeintchecks- /sdkpath:"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0" /doc:obj\Debug\RuleSet.BM.xml /define:"CONFIG=\"Debug\",DEBUG=-1,TRACE=-1,_MyType=\"Windows\",PLATFORM=\"AnyCPU\"" /reference:**********.dll,***********.dll,***********.dll,*************.dll,"C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Core.dll","C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.dll","C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.dll","C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Drawing.dll","C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Windows.Forms.dll","C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xml.dll" /debug+ /debug:full /keyfile:..\..\..\Transformer.snk /optimize- /out:obj\Debug\RuleSet.BM.dll /target:library /warnaserror- RuleSet.BM.vb AssemblyInfo.vb RuleSetInfo.vb "C:\Documents and Settings\pl-nextrabuild\Local Settings\Temp\.NETFramework,Version=v4.0.AssemblyAttributes.vb" /warnaserror+:41999,42016,42017,42018,42019,42020,42021,42022,42032,42036 

回答

1

的.vsprops文件由TFS創建萬一有任何C++項目,它不是在您的構建中使用。然而,它包含了與TFS同樣爲所有其他項目創建的$(OutDir)相同的更改。檢出文件,

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\TeamBuild\Microsoft.TeamFoundation.Build.targets 

並查看CoreCleanSolution目標以查看邏輯。在你的TFS構建過程模板中搜索OutDir,看看TFS如何改變這個屬性,這就是你的項目構建到一個備用位置的原因。

+0

謝謝,這正是這個問題。我昨天無意中發現了它,只是通過創建新的構建配置。然後我比較了這些定義,發現我的團隊中的某個人在.xaml模板中改變了很多。切換到我們的默認模板幫助。謝謝! –

相關問題