【问题标题】:Disable code analysis while build via Devenv command line通过 Devenv 命令行构建时禁用代码分析
【发布时间】:2023-03-18 01:30:01
【问题描述】:

我正在使用 DevEnv 命令行构建我的 VS 解决方案。然而,在构建时,它显示了许多与代码分析相关的警告。有什么方法可以在命令行中指定不为 Devenv 运行代码分析?

谢谢

【问题讨论】:

  • 你找到devenv的解决方案了吗?我不说MSBuild

标签: visual-studio command-line devenv


【解决方案1】:

使用 Devenv 构建自 VS2010 以来已被弃用,您应该改用 MSBuild.exe。

是否执行代码分析由项目中的<RunCodeAnalysis> 属性决定。您可以使用 MSBuild /p 命令行选项覆盖属性值。例如:

   MSBuild yadayada.sln /p:runcodeanalysis=false

在命令行构建中而不是在 IDE 构建中收到代码分析警告当然不应该是任何原因。您非常简短的问题没有暗示潜在的原因可能是什么。一个非常粗略的猜测是,您正在使用不适当的规则集构建发布配置。

【讨论】:

  • 尽管我一般都同意你的观点,但使用 devenv.exe 而不是 MSBuild 是有正当理由的。我们在客户的构建服务器上面临构建顺序不正确的使用 msbuild-bug (blogs.msdn.com/b/visualstudio/archive/2010/12/21/…),因此必须使用 devenv.exe。我偶然发现了这个问题,因为我想为我们的 CI 构建覆盖 RunCodeAnalysis 设置。
  • VS2010 是 msbuild 训练轮,不要卡在旧版本上。
  • 当然,如果我有空升级霸道,我会在早上做第一件事:) 他们正在运行 Server 2003 构建服务器,所以我必须忍受它暂时。
  • MSBuild 不适用于 Visual Studio Installer Projects 等扩展,因此很遗憾 devenv 有很大的用例。
  • “已弃用”的声明可能过于强烈。从 VS 2019 开始,它仍然受支持。文档确实说“对于与构建相关的任务,建议您使用 MSBuild 而不是 devenv。”,但 /Build/Project/Clean 等开关仍然可以正常工作。
猜你喜欢
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 2019-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
相关资源
最近更新 更多