首页 / 知识
关于msbuild:在Visual Studio中显示生成时间?
2023-04-16 12:31:00
Displaying build times in Visual Studio?我们的构建服务器花费太长时间来构建我们的C ++项目之一。它使用Visual Studio2008。是否有任何方法可以使devenv.com记录在解决方案中构建每个项目所花费的时间,以便使我知道将精力集中在哪里? 在这种情况下,不能选择改进的硬件。 我尝试设置输出详细程度(在"工具/选项/项目和解决方案/构建和运行/ MSBuild项目构建输出详细程度"下)。这似乎在IDE中没有任何作用。 从命令行运行MSBuild时(对于Visual Studio 2008,它必须为MSBuild v3.5),它显示最后的总时间,但不显示IDE中的时间。 我确实想要解决方案中每个项目的耗时报告,以便我可以弄清楚构建过程在哪里花费了时间。 另外,由于我们实际上使用NAnt来驱动构建过程(我们使用Jetbrains TeamCity),是否有办法让NAnt告诉我每个步骤花费的时间? 菜单工具→选项→项目和解决方案→VC ++项目设置→生成时序应起作用。 转到工具→选项→项目和解决方案→生成并运行→MSBuild项目生成输出详细信息-设置为"正常"或"详细",并且生成时间将出现在输出窗口中。 Visual Studio 2012-2019年
单击
将 对于Visual Studio 2012,您可以使用Build Monitor扩展。 工具->选项->项目和解决方案->构建并运行-> 将" MSBuild项目构建输出详细程度"从"最小"设置为"正常" 如果您坚持使用VS2005,则可以使用vs-build-timer插件。在构建完成时,它显示了花费的总时间以及每个项目工期的(可选)摘要。 免责声明;我写的。是的,我需要创建一个安装程序……一天! 由于您的问题涉及从命令行使用DevEnv,因此我也建议您使用MSBuild(无需修改即可构建.sln文件)。
如果要可视化构建,可以使用IncrediBuild。作为Visual Studio 2015 Update 1的一部分,IncrediBuild现已以独立模式(未分发,但仅可在本地计算机上的8个内核上使用)免费提供 免责声明:我为IncrediBuild工作 我创建了一个扩展来测量构建时间并在图形中显示事件的顺序:Visual Studio Build Timer。
它在Visual Studio市场上可用,并且适用于VS2015和VS2017。 我发现视觉演示非常有帮助。 除了显示需要较长时间的项目外,它还显示了它们之间的依赖关系,即,在其他项目开始之前等待其他项目完成的项目。 这样,您可以发现构建中的瓶颈,并查看需要打破哪些依赖关系才能增强构建的并行化。
首先进行构建,然后查看哪个项目首先出现在构建输出中(输出窗口中的Ctrl + Home)。右键单击该项目→项目属性→编译→构建事件→预构建。和 因此,每次看到构建结果时(或在构建过程中),在输出窗口中都执行Ctrl + Home。在该区域的某个地方,时间和日期注视着您! 哦,随着构建顺序的改变,您可能最终将这些详细信息添加到许多项目中:) 我找到了更好的解决方案! ### 工具→选项→项目和解决方案→生成并运行→MSBuild项目生成输出的详细程度=正常(或最小)。这会将时间添加到输出窗口的开始/顶部。在输出窗口中应该执行Ctrl + Home。 如果要查看每个项目花费多少时间,则项目和解决方案→VC ++项目设置→生成时间=是。适用于所有项目;" VC ++"具有误导性。
我到这里结束了,因为我只想将日期和时间包含在构建输出中。如果其他人正在搜索类似的内容,则只需在项目"属性"→"编译"→"构建事件"下的"预构建"和/或"后构建"事件中添加 选项->项目和解决方案-> VC ++项目设置->构建时间
如果要调用可以跟踪总构建时间的外部程序,则可以对VS 2010使用以下解决方案(可能更旧)。下面的代码使用Casey Muratori的CTime。当然,您也可以使用它来简单地打印构建时间。
打开宏资源管理器,并在
从这里到这里的答案。 |
最新内容
相关内容
纯命令行linux服务器?
纯命令行linux服务器?,密码,服务,系统,命令,终端,地址,百度,情况,状态,公共,在linux下如何访问服务器首先,连接相应linux主机,进入到linux命令行linux显示操作命令?
linux显示操作命令?,系统,工作,地址,信息,管理,命令,目录,基础,工具,标准,linux常用命令1、linux系统常用操作命令linux系统常用操作命令如下:llinux命令行显示路径?
linux命令行显示路径?,系统,数据,信息,命令,工作,时间,标准,文件,目录,名称,linux中查看文件和目录的命令是什么1、在Linux系统中,使用ls命令可linux显示详细命令?
linux显示详细命令?,工作,系统,信息,地址,命令,标准,数据,目录,文件,名称,执行linux命令,其中显示当前目录下的文件命令是什么linux系统下用lslinux显示上一个命令?
linux显示上一个命令?,信息,机器人,人工智能,第一,地方,工具,在线,网站,代码,实时,在linux中如何查看前一屏幕的内容?1、第一:你可以在执行程序检查linux服务器命令?
检查linux服务器命令?,系统,信息,状态,情况,时间,工具,网络,环境,服务,电脑,如何查看linux服务器的版本和配置信息?1、登录到linux服务器执行llinux满屏显示命令?
linux满屏显示命令?,工具,系统,服务,电脑,网络,技术,信息,数据,上会,软件,如何显示linux所有命令1、网卡。在linux系统中,ifconfig-a命令是用来linux打包项目命令?
linux打包项目命令?,项目,文件,命令,软件,数字,系统,名称,工具,目录,格式,Linux打包和压缩1、Linux下,常用打包命令有2个,分别是tar和dd;常用的压显示linux时间命令?
显示linux时间命令?,时间,系统,信息,一致,命令,文件,终端,目录,选项,参数,linuxcp命令并显示拷贝时间在没有带-a参数时,两个文件的时间是不一样linux项目更新命令行?
linux项目更新命令行?,工作,地址,系统,数据,信息,项目,标准,电脑,目录,命令,linux常用的命令有哪些1、linux系统常用操作命令linux系统常用操linux命令刷新显示?
linux命令刷新显示?,系统,工作,最新,地址,命令,异常,分析,工具,信息,软件,Linux命令1、linux系统常用操作命令如下:ls:全拼list,功能是列出目录的linux服务器域名命令?
linux服务器域名命令?,地址,信息,系统,网络,服务,环境,名称,网站,管理,电脑,linux临时启动域名解析服务的命令是1、在linux环境下能实现域名的