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

执行npm run dev触发node:events:491未处理错误事件求助

解决npm run dev时的Error: spawn node_modules/webpack/bin/webpack.js ENOENT错误

问题详情

执行npm run dev时触发未处理错误事件,终端输出如下:

npm run dev

> dev
> npm run development

> development
> cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js

node:events:491
      throw er; // Unhandled 'error' event
      ^

Error: spawn node_modules/webpack/bin/webpack.js ENOENT
    at ChildProcess._handle.onexit (node:internal/child_process:285:19)
    at onErrorNT (node:internal/child_process:483:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
Emitted 'error' event on ChildProcess instance at:
    at ChildProcess._handle.onexit (node:internal/child_process:291:12)
    at onErrorNT (node:internal/child_process:483:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn node_modules/webpack/bin/webpack.js',
  path: 'node_modules/webpack/bin/webpack.js',
  spawnargs: [
    '--progress',
    '--hide-modules',
    '--config=node_modules/laravel-mix/setup/webpack.config.js'
  ]
}

Node.js v19.2.0

环境信息

  • npm版本:8.19.3
  • package.json内容:
{
    "private": true,
    "scripts": {
        "dev": "npm run development",
        "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
        "watch": "npm run development -- --watch",
        "watch-poll": "npm run watch -- --watch-poll",
        "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
        "prod": "npm run production",
        "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
    "devDependencies": {
        "axios": "^0.18",
        "bootstrap": "^4.0.0",
        "cross-env": "^5.1",
        "jquery": "^3.2",
        "lodash": "^4.17.5",
        "vue": "^2.5.7",
        "vuex": "^3.0.1"
    }
}

解决方案

1. 安装缺失的核心依赖

脚本执行需要webpack、laravel-mix、webpack-dev-server三个包,但你的package.json未声明这些依赖,导致系统找不到对应文件。根据项目现有依赖版本(如Vue 2、Bootstrap 4),安装兼容的旧版本:

npm install --save-dev laravel-mix@^4.0.0 webpack@^4.0.0 webpack-dev-server@^3.0.0

2. 重置依赖安装(可选,若安装后仍报错)

如果之前的依赖缓存或锁文件存在损坏,执行以下步骤重置:

# 删除现有依赖包和锁文件
rm -rf node_modules package-lock.json
# 清除npm缓存
npm cache clean --force
# 重新安装所有依赖
npm install

3. 验证修复结果

完成上述操作后,重新运行编译脚本:

npm run dev

原因说明

你的npm脚本直接调用了node_modules目录下的webpack和laravel-mix相关文件,但这些包并未被添加到devDependencies中,npm不会自动安装未声明的依赖,因此触发ENOENT(文件不存在)错误,进而抛出未处理的error事件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 19:05:45