Dela via


MSB4018 diagnostikkod

I den här artikeln beskrivs MSB4018 felkod.

Meddelandetext

MSB4018: The 'value' task failed unexpectedly.

Beskrivning

Det här felet genereras när en aktivitet misslyckas med ett ohanterat undantag. Det här problemet är vanligtvis ett tecken på en bugg i uppgiften.

Du kan stöta på det här felet när bygget kör en uppgift i en miljö som den inte var förberedd för. Till exempel när en aktivitet har ett x86-beroende, men aktiviteten körs i en 64-bitars MSBuild-miljö. Det här scenariot kan visas som ett System.DllNotFoundException undantag, vilket visas i följande utdata:

S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018: The "AnyCPUTaskWithPInvoke" task failed unexpectedly.
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018: System.DllNotFoundException: Unable to load DLL 'Native32BitLibrary.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.NativeMethod()
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.OtherMethod() in S:\BitnessInMSBuild\AnyCPUTaskWithPInvoke\AnyCPUTaskWithPInvoke.cs:line 19
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at AnyCPUTaskWithPInvoke.AnyCPUTaskWithPInvoke.Execute() in S:\BitnessInMSBuild\AnyCPUTaskWithPInvoke\AnyCPUTaskWithPInvoke.cs:line 12
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
S:\BitnessInMSBuild\ShowErrors.proj(6,7): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()

Lösning / Beslut

Se till att uppgiften uttrycker ett beroende av den körningsmiljö som den kräver i UsingTask-elementet.

Gäller för

Alla versioner av MSBuild