You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 5.6项目执行npm run dev卡在95% emitting问题求助

解决Laravel 5.6 + Laravel Mix卡在95% emitting的问题

我之前在Laravel 5.6项目里用laravel-mix的时候也碰到过一模一样的问题,每次npm run dev都卡在95% emitting阶段,折腾了好一阵才解决,给你几个亲测有效的方案:

1. 彻底清理依赖与缓存

有时候依赖缓存或者损坏的node_modules会导致这个问题,先彻底清理重新安装:

  • Windows系统执行:
    rd /s /q node_modules
    del package-lock.json yarn.lock
    npm install
    
  • 类Unix系统执行:
    rm -rf node_modules package-lock.json yarn.lock
    npm install
    
  • 额外清理Laravel Mix的缓存:删除public/mix-manifest.json文件,以及storage/framework/cache目录下的所有缓存内容。

2. 简化webpack.mix.js配置排查

大概率是你的配置里有资源路径错误或者复杂的处理逻辑卡住了,先简化配置测试:
把webpack.mix.js改成最基础的配置:

const mix = require('laravel-mix');

mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.scss', 'public/css');

再执行npm run dev,如果能正常完成,就说明是你原来的配置里有问题(比如mix.copy路径错误、引用了不存在的资源文件等),再逐步加回原来的配置排查。

3. 匹配正确的依赖版本

Laravel 5.6对应的laravel-mix版本是2.x系列,如果你安装的是更高版本可能会出现兼容性问题:

  1. 打开package.json,把laravel-mix的版本改成"laravel-mix": "^2.1.14"
  2. 重新执行npm install
    另外,Node.js版本也别太高,Laravel 5.6推荐使用Node 8.x或10.x版本,过高的Node版本可能会和旧版laravel-mix不兼容,可以用nvm切换到合适的版本试试。

4. 查看详细日志定位问题

如果上面的方法都没解决,就开启webpack的详细日志,看看到底卡在哪个环节:
执行命令时去掉--hide-modules参数,换成:

npm run development -- --progress --verbose

这样能看到emitting阶段具体在处理哪个文件,方便精准定位问题。

内容的提问来源于stack exchange,提问作者Ricky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 11:12:10