首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VS2010编译器在MSBuild项目中自动生成不需要的.vsprops文件

VS2010编译器在MSBuild项目中自动生成不需要的.vsprops文件
EN

Stack Overflow用户
提问于 2011-07-14 16:34:32
回答 1查看 749关注 0票数 0

我有一个用MSBuild通过Team Foundation Server build定义构建的PrimaryBuild.targets文件。这个文件调用其他msbuild任务来构建我的组件和许多其他目标中包含的所有VB解决方案。

(msbuild PrimaryBuild.targets)

代码语言:javascript
复制
/t:FullBuild;Deploy /p:Decorator=NTBMDev;DropLocation=\\xxx.xxx.xxx.xxx\;CurrentBranch=DEV;Configuration=Debug

当我在本地计算机上从batch构建它时,一切似乎都很好。当我在构建服务器上构建它时,在构建过程中会创建一个PrimaryBuild.target.vsprops文件。它覆盖了我的项目的OutputDirectory,并且所有输出文件都被复制到错误的文件夹(我的部署目标找不到它)

代码语言:javascript
复制
<?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项目或编写自己的目标。此外,这是在服务器上构建过程中创建.vsprops的唯一组件,其他组件工作正常。我甚至不知道我应该在哪里搜索,为什么这个项目会创建这个文件。

如果有帮助的话--这是我日志中的CoreCompile:

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-15 00:20:32

.vsprops文件是由TFS创建的,以防有任何C++项目,它并没有在您的构建中使用。但是,它确实包含了与TFS为所有其他项目创建的$(OutDir)相同的更改。看看这份文件

代码语言:javascript
复制
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\TeamBuild\Microsoft.TeamFoundation.Build.targets

并查看CoreCleanSolution目标以了解其中的逻辑。在TFS build process模板中搜索OutDir,查看TFS是如何改变此属性的,这就是为什么您的项目会生成到另一个位置。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6690496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档