Powershell 忽略msbuild上的/noconlog开关未抑制的输出
直到最近,如果我调用Powershell 忽略msbuild上的/noconlog开关未抑制的输出,powershell,msbuild,Powershell,Msbuild,直到最近,如果我调用msbuild/noconlog/nologo mysolution.sln,在powershell中运行时会得到零输出。现在它似乎忽略了/noconlog(即/noconsolelogger)并打印此消息: 在此解决方案中一次构建一个项目。要启用并行生成,请添加“/m”开关 有没有办法禁用此输出?添加/m似乎会抑制输出,但实际上似乎/noconlog应该抑制输出,我不应该使用/m作为解决方法 这是一个应该报告的错误吗?如果是,在哪里 关于为什么这很重要的一些背景 我在po
msbuild/noconlog/nologo mysolution.sln
,在powershell中运行时会得到零输出。现在它似乎忽略了/noconlog
(即/noconsolelogger
)并打印此消息:
在此解决方案中一次构建一个项目。要启用并行生成,请添加“/m”开关
有没有办法禁用此输出?添加/m
似乎会抑制输出,但实际上似乎/noconlog
应该抑制输出,我不应该使用/m
作为解决方法
这是一个应该报告的错误吗?如果是,在哪里
关于为什么这很重要的一些背景 我在powershell脚本中有一个函数。我检查从下面的函数返回的结果,以查看msbuild是否成功。它以前工作过,但现在由
msbuild
输出的消息包含在返回中,导致比较失败
function buildSolution ($file) {
$path = $file.FullName
& $msbuild /nologo /noconlog $path
return $?
}
下面是我检查该函数结果的地方:
$solutionsToBuild = $solutionsToBuild | where { -not (buildSolution($_)) }
也许我可以重定向msbuild的输出,这样它就不会出现在我从函数返回的内容中。将详细级别设置为
quiet
,用作参数
用法:
msbuild $project /verbosity:q
与/nologo
配对,它不应该输出任何内容。(就我的情况而言,无论如何都不是这样。)