这个错误消息是什么意思?我能做些什么来纠正这个问题?

AssemblyInfo.cs退出,代码为9009


这个问题可能是在Visual Studio中的. net解决方案的构建后步骤中发生的。


当前回答

Tfa的回答被否决了,但实际上会导致这个问题。 多亏了hanzolo,我在输出窗口中找到了以下内容:

3>'gulp' is not recognized as an internal or external command,
3>operable program or batch file.
3>D:\dev\<filepath>\Web.csproj(4,5): error MSB3073: The command "gulp clean" exited with code 9009.

在运行npm install -g gulp后,我不再得到这个错误。如果在Visual Studio中出现此错误,请检查输出窗口并查看问题是否是未设置的环境变量。

其他回答

我在编校Path环境变量时导致了此错误。编辑后,我不小心将Path=添加到路径字符串的开头。使用这样一个格式不正确的路径变量,我无法在命令行上运行XCopy(没有找到命令或文件),Visual Studio拒绝运行构建后步骤,并引用代码9009的错误。

XCopy通常位于c:\ windows \ system32。一旦Path环境变量允许XCopy在DOS提示符下得到解析,Visual Studio就很好地构建了我的解决方案。

另一个变体:

今天我在win32中从cron调用python解释器并取ExitCode (%ERRORLEVEL%) 9009,因为cron使用的系统帐户没有python目录的路径。

实际上,我注意到由于某些原因,%windir%环境变量有时会被擦除。对我有用的是重新设置windir环境变量为c:\windows,重新启动VS,就是这样。这样可以避免修改解决方案文件。

在我的案例中,问题发生在我试图在命令行上为测试类库中的Post-build事件使用命令时。当你像这样使用引号时:

"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit" "$(TargetPath)" 

或者如果你使用控制台:

"$(SolutionDir)\packages\NUnit.Runners.2.6.2\tools\nunit-console" "$(TargetPath)"

这为我解决了问题。

对我来说,磁盘空间很低,无法写入的文件预计以后会出现。其他答案提到了丢失的文件(或命名错误/不恰当地引用了文件名称)——但根本原因是磁盘空间不足。