dotnet watch run 在 Mac 上报错 "Exited with error code 143"。

4

我正在运行一个.NET Core Web应用程序,并使用dotnet watch run来监视更改并在更改时重新启动应用程序。

当通过文件更改触发命令时,在终端中抛出错误。

watch: 以错误代码143退出

结果是,当应用程序重新启动时,它尝试附加到相同的端口,并引发错误。

System.IO.IOException:无法绑定到IPv4环回接口上的地址http://localhost:5000:端口已被占用。 ---> System.AggregateException:发生了一个或多个错误。(错误-4091 .......

要解决此问题,您需要找到任务并手动终止它们,然后端口就会被释放。

当通过dotnet run运行应用程序并通过Ctrl+C手动关闭时,我没有遇到任何问题。

我正在使用.NET命令行工具(1.0.3) 我在.NET命令行工具(1.0.1)上也遇到了此问题,我升级以尝试解决此问题。


有解决方案了吗? - kitta
1个回答

3
为解决该问题,您需要手动查找并终止任务,然后端口就会被释放。
我建议在 dotnet-watch 上开启一个问题。https://github.com/aspnet/DotNetTools/issues。我需要更多的细节来调查此问题,但似乎当 dotnet-watch 正在尝试重新启动您的 Web 应用程序时,关闭不会正常完成,并可能留下孤立的进程。这可能是您的应用程序关闭逻辑中的错误,也可能是 dotnet-watch 的进程处理中的错误。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接