Vue3+Vite项目执行yarn dev时随机卡住问题求助
问题描述
- 基于Vue3 + Vite + Yarn的项目,此前执行
yarn dev可正常启动,现在执行该命令时随机卡住,无任何错误提示,10次执行仅1次能正常启动 - 启用
--debug模式后,成功与失败场景下的调试日志完全一致 - 已尝试删除
node_modules并重新安装依赖,问题未解决
package.json配置
{ "name": "app", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite --port 7777 --host 0.0.0.0 --force --debug", "build": "vite build", "preview": "vite preview" }, "dependencies": { "@quasar/extras": "^1.15.9", "apexcharts": "^3.37.2", "axios": "^1.2.2", "install": "^0.13.0", "pinia": "^2.0.28", "qrcode-vue3": "^1.4.17", "quasar": "^2.11.4", "vue": "^3.2.45", "vue-router": "4", "vue3-apexcharts": "^1.4.1", "vue3-tabs-chrome": "^0.3.2" }, "devDependencies": { "@quasar/vite-plugin": "^1.3.0", "@vitejs/plugin-vue": "^4.0.0", "vite": "^4.0.0", "vite-plugin-chunk-split": "^0.4.7" } }
可能的原因及排查方向
- 端口随机抢占:虽然指定了端口7777,但可能存在其他进程随机占用该端口的情况。可以尝试更换端口(如
--port 8888),或启动前检查端口占用状态(Windows用netstat -ano | findstr :7777,Linux/macOS用lsof -i :7777) - Vite插件兼容性问题:
vite-plugin-chunk-split或@quasar/vite-plugin可能与Vite 4.x存在版本适配问题。可暂时禁用vite-plugin-chunk-split观察启动稳定性,或升级/降级相关插件版本 - 文件系统监控限制:Vite依赖文件系统监控实现热更新,若系统监控阈值不足(比如Linux下
inotify的watch limit过低),会导致启动卡住。可调整系统限制:- Linux:执行
sysctl fs.inotify.max_user_watches查看当前值,过低则用sysctl -w fs.inotify.max_user_watches=524288临时调整,或写入/etc/sysctl.conf永久生效 - macOS:尝试给终端授予完整磁盘访问权限
- Linux:执行
- Yarn缓存与锁文件问题:删除
yarn.lock后重新执行yarn install,避免依赖版本隐性冲突;也可执行yarn cache clean清理缓存后重装依赖 - 项目文件异常:项目中存在损坏文件、超大资源或循环引用模块,可能导致Vite编译时随机卡住。可逐步排查:
- 临时移除大体积静态资源(如高清图片、视频),观察启动状态
- 注释部分页面/组件的引入,逐步缩小范围定位问题文件
- 系统资源不足:启动时内存、CPU占用过高,导致Vite进程被阻塞。关闭其他高资源占用程序后测试,若频繁出现可考虑优化项目资源占用或升级硬件
- Node.js版本兼容性:当前Node.js版本可能与Vite 4.x不兼容。用nvm切换到16.x或18.x稳定版后再测试启动情况
内容的提问来源于stack exchange,提问作者Riccoh
相关产品推荐
相关产品推荐

