Laravel 9部署到Homestead后执行npm run dev出现大量错误如何解决
解决Laravel 9 Homestead环境中
npm run dev的ENOSPC错误 问题原因
这个错误的核心是Linux系统的inotify文件观察者数量上限不足。Laravel 9默认使用Vite作为前端构建工具,Vite需要监听大量项目文件的变化,当项目文件总数超过Homestead虚拟机默认的max_user_watches阈值时,就会触发ENOSPC: System limit for number of file watchers reached错误。伴随的未处理Promise拒绝警告是该错误引发的连锁问题,解决核心的watch limit限制后通常会自动消失。
解决方法
临时生效(重启虚拟机后失效)
进入Homestead虚拟机,执行以下命令临时提高文件观察者数量:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
永久生效(重启虚拟机后依然有效)
- 打开系统sysctl配置文件:
sudo nano /etc/sysctl.conf - 在文件末尾添加一行配置:
fs.inotify.max_user_watches=524288 - 保存并退出编辑器(nano中按
Ctrl+O回车保存,Ctrl+X退出) - 让配置立即生效:
sudo sysctl -p
验证修复
执行完上述操作后,重新运行npm run dev,Vite开发服务器应该能正常启动。如果仍有Promise警告,可尝试删除项目内的node_modules目录和package-lock.json文件,重新执行npm install后再启动开发服务。
内容的提问来源于stack exchange,提问作者mstdmstd
相关产品推荐
相关产品推荐

