首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果存在.net版本不匹配,则强制构建失败

如果存在.net版本不匹配,则强制构建失败
EN

Stack Overflow用户
提问于 2011-08-16 23:24:52
回答 1查看 231关注 0票数 0

我们有一些应用程序仍然必须是2.0版本,因为它们将在没有安装v3.5框架的客户端机器上运行,我们希望确保没有不属于的代码被滑入。我知道3.5框架包括2.0框架。也就是说,我们正在努力确保,如果有人无意中将特定项目的目标版本从2.0更改为其他版本,我们的自动构建将失败。这不应该发生,但我们正在努力格外小心。

我们认为可能会有某种方式使用beforeBuild,也可能使用.csproj文件中的TargetFrameworkVersion。如“如果TargetFrameworkVersion不是2.0,则输出消息并使构建失败”。这是可能的/最好的方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-16 23:30:01

听起来您想要将项目的“目标框架”更改为.Net Framework2.0。

文章“如果更改.NET框架版本,如果代码包含对不同版本的引用,则可能会收到错误消息。”

很棒的MSDN演练:http://msdn.microsoft.com/en-us/library/bb398202.aspx

如果您想要在构建服务器上强制执行2.0版,那么修改msbuild选项以将工具集版本“覆盖”到2.0。此命令开关优先于项目设置文件,并“导致所有项目及其项目到项目的依赖项都根据该ToolsVersion生成,即使解决方案中的每个项目都指定了自己的项目”。这里是关于什么是工具集的msdn:http://msdn.microsoft.com/en-us/library/bb383796(v=vs.90).aspx,这里是关于如何指定命令行开关的MSDN:http://msdn.microsoft.com/en-us/library/bb383985(v=vs.90).aspx

如果你使用TFS来做你的夜间构建,那么这里是如何添加参数的(我使用的是VS2010 Pro):

当您完成任何其他设置时,请转到团队资源管理器并展开项目,然后右键单击builds项并选择 build Definition (或编辑现有的Build definition)

  • Go以处理和展开“Settings"

  • Find

  • MsBuild /tv:2.0

build changes。<代码>G218

现在,即使项目文件发生更改,构建服务器也会捕获2.0级别以上的代码并失败。如果您没有使用TFS进行构建,请查看您的工具是否允许您修改msbuild命令行。

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

https://stackoverflow.com/questions/7080714

复制
相关文章

相似问题

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