与在单个解决方案中打开所有项目相比,为啥 Devenv 项目构建非常缓慢

Posted

技术标签:

【中文标题】与在单个解决方案中打开所有项目相比,为啥 Devenv 项目构建非常缓慢【英文标题】:Why does Devenv projects build very slowly compared to opening all in a single solution与在单个解决方案中打开所有项目相比,为什么 Devenv 项目构建非常缓慢 【发布时间】:2012-06-18 20:59:34 【问题描述】:
set Unified=C:\Workspaces\Main\Unified\UnifiedFX.sln
set Fullserver=C:\Workspaces\Main\Unified\FullServer\Tests\FullServer.Automation\FullServer.Automation.csproj
set Management=C:\Workspaces\Main\Unified\Management\Tests\Management.Automation\Management.Automation.csproj
set Move=C:\Workspaces\Main\Unified\Move\Tests\Move.Automation\Move.Automation.csproj
set d64="Debug|x64"
set d86="Debug|x86"

for %%a in (%d64%, %d86%) do (
      for %%b in (%Fullserver%, %Move%, %Management%) do (
                devenv %Unified% /build %%a /project %%b))

这是我的 .bat 文件。当我运行它时,它需要将近 90 秒才能完成。然而,我可以在几秒钟内从 Visual Studios 2010 中构建每个单独的项目,再加上在 x64 和 x86 之间切换所需的时间。为什么bat文件这么慢?

【问题讨论】:

重建整个解决方案需要多长时间? 【参考方案1】:

您正在为每个项目加载 Visual Studio,我敢打赌这是最耗时的。

不用运行 devenv.exe 来运行构建,只需在 csproj 或 sln 文件上使用 MSBUILD.EXE。

【讨论】:

以上是关于与在单个解决方案中打开所有项目相比,为啥 Devenv 项目构建非常缓慢的主要内容,如果未能解决你的问题,请参考以下文章

为啥这个 MySQL 存储函数给出的结果与在查询中进行计算不同?

与在 Interface Builder 中使用自动布局相比,SnapKit 有啥优势?

当按下提交按钮时,与在文本框中提取信息相比,表单的用途是啥? [复制]

与在 BigQuery ML 中使用 ML.Evaluate 进行评估相比,创建模型后的评估结果有啥区别?

与在 C++ 中使用 push_back 相比,声明具有大小的向量是不是提供了任何改进

在 app.yaml 中定义路由与在 AppEngine 中的 WSGIApplication 中定义一个大型映射相比有性能提升吗?