Tajemnica zablokowania nieaktywnych procesów msbuild.exe, zablokowanie Stylecop.dll, Nuget AccessViolationException i CI buduje konflikty między sobą

Obserwacje:

Na naszym serwerze kompilacji Jenkins widzieliśmy wiele procesów msbuild.exe (~ 100), które kręciły się po zakończeniu pracy, z wykorzystaniem około 20 MB pamięci i 0% aktywności procesora.

Budowano przy użyciu różnych wersji stylecopsporadycznie w braku:

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.

Nuget.exe byłsporadycznie wyjście z następującym błędem naruszenia dostępu (0x0000005):

.\workspace\.nuget\nuget install .\workspace\packages.config -o .\workspace\packages" exited with code -1073741819.

MsBuild został uruchomiony w następujący sposób za pomocą zadania Jenkins Matrix, z włączoną opcją „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`

questionAnswers(3)

yourAnswerToTheQuestion