观察:
workspace\packages\StyleCop.MSBuild.4.7.41.0\tools\StyleCop.targets(109,7):
error MSB4131: The "ViolationCount" parameter is not supported by the "StyleCopTask" task.
Verify the parameter exists on the task, and it is a gettable public instance property.
.\workspace\.nuget\nuget install .\workspace\packages.config -o .\workspace\packages"
exited with code -1073741819.
MsBuild通过Jenkins Matrix作业以下列方式启动,启用了“BuildInParallel”:
`msbuild /t:%Targets% /m
/p:Client=%Client%;LOCAL_BUILD=%LOCAL_BUILD%;BUILD_NUMBER=%BUILD_NUMBER%;
JOB_NAME=%JOB_NAME%;Env=%Env%;Configuration=%Configuration%;Platform=%Platform%;
Clean=%Clean%; %~dp0\_Jenkins\Build.proj`
在经过大量挖掘并尝试各种不起作用之后,我最终创建了一个新的最小解决方案,在很少有其他事情的情况下重现了这个问题。问题原因是由msbuild的多核并行化 - 'm'参数引起的。
以下帖子很有帮助:
修复:
set MSBUILDDISABLENODEREUSE=1
添加到启动msbuild的批处理文件中/m:4 /nr:false
启动msbuild我遇到过同样的问题。我发现的一个旧参考是在csproj文件中
<PropertyGroup>
<StyleCopMSBuildTargetsFile>..\packages\StyleCop.MSBuild.4.7.48.0\tools\StyleCop.targets</StyleCopMSBuildTargetsFile>
另外,在关闭visual studio后,我删除了与sln文件位于同一文件夹中的整个“Packages”文件夹。它触发VS重建文件夹并放开旧版stylecop的缓存
我有一段时间遇到同样的问题,经过一些挖掘后,构建需要花费6分钟才能完成我发现它的节点重用故障所以添加/ m:4 / nr:false立即修复我的问题