In some of our jobs we have seen messages like:
13:19:52 [MSBuild] [ERROR] - '//INTRANET/Releases/SmartTranslator/ConsoleTranslator.exe', IO exception has been thrown: java.io.UncheckedIOException: java.nio.charset.UnmappableCharacterException: Input length = 1
17:19:33 [MSBuild] [-ERROR-] - 'rs', IO exception has been thrown: java.nio.file.NoSuchFileException: rs
17:19:33 [MSBuild] [-ERROR-] - 'NMAKE', IO exception has been thrown: java.nio.file.NoSuchFileException: NMAKE
The source of them seem to be these lines in the output:
16:43:02 \\INTRANET\Releases\SmartTranslator\ConsoleTranslator.exe: Warning ST: Could not translate string 'Expand f&olders larger than:'.
17:19:23 NMAKE : fatal error U1077: '.\Tests.exe' : return code '0x1'
17:19:23 NMAKE : fatal error U1077: '"C:\Program Files (x86)\Utils\NMAKE.EXE"' : return code '0x2'
16:55:11 rs: error 002: Renaming the File was not possible. Message: The process cannot access the file '...' because it is being used by another process.
The problem for us is, that we also use the console parser plugin. When another tool reports a warning, the MSBuild parser reports an error because it has a problem with the tool and the job fails due to our configuration of the console parser plugin. As a workaround we currently execute the console parser plugin before the warnings-ng plugin.
Based on https://blogs.msdn.microsoft.com/msbuild/2006/11/02/msbuild-visual-studio-aware-error-messages-and-message-formats/ tool names are valid.