- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 4 核机器上使用 MsBuild。我给出以下命令行来构建属于大型 VC++ 解决方案的 4 个项目(有超过 4 个项目,所有项目都没有相互依赖)。我使用的是 Visual Studio 2008。
为了加快构建时间,我尝试利用 maxcpucount
选项,但它似乎不起作用。我预计每个核心都会构建我在命令行提供的 4 个项目中的每一个。不幸的是,我测量了构建时间,无论有没有 maxcpucount
选项,我都得到了相同的精确结果。
C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe MyVCppSolution.sln /t:ProjA;ProjB;ProjC;ProjD /m
你知道我在这里做错了什么吗?
正确的说法是“一次构建 4 个 MyVCppSolution.sln 解决方案项目”,还是应该手动运行 4 个进程,每个进程构建最多 4 个解决方案的单个项目?
最佳答案
MSBuild 可以并行项目。您的命令行调用(使用/t)要求目标并行构建,这并不完全是设计。您还必须在核心 .proj 文件中设置并行标志
要实现您想要的目标(使用所有可用核心并行 4 个项目),您需要有一个调用 msbuild 并将 BuildInParallel 参数设置为 true 的“整体”proj 文件。然后,该调用将调用您的其他项目。 msbuild.exe 上的/m 和 BuillInParallel 的组合将为您提供您想要的内容。
所以希望:(如果您想要并行构建 ProjA、B、C、D)
文件 buildall.proj
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion=”3.5”>
<Target Name="default">
<MSBuild Projects="proja.proj, projb.proj, probc.proj,prod.proj" BuildInParallel="true"/>
</Target>
</Project>
然后你可以调用 buildall
msbuild.exe buildall.proj /m:4
关于visual-studio-2008 - 使用带有 maxcpucount 选项的 MSBUILD 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3660413/
我正在尝试构建大约 600 个项目,其中一些是 .net 2.0,一些是 3.5。我正在使用 Windows 2003 Enterprise Edition 32 位和所有最新的 Windows 更新
我在 4 核机器上使用 MsBuild。我给出以下命令行来构建属于大型 VC++ 解决方案的 4 个项目(有超过 4 个项目,所有项目都没有相互依赖)。我使用的是 Visual Studio 2008
我正在尝试使用 CruiseControl.NET 和 MSBUILD 来缩短构建时间,并且命令行开关之一 maxcpucount 可用于允许并行进行构建。我们的解决方案有 60 多个项目,因此任何改
我是一名优秀的程序员,十分优秀!