【问题标题】:Webpack not being recognized after updates更新后无法识别 Webpack
【发布时间】:2019-10-24 10:55:11
【问题描述】:

在我的 laravel 应用中,更新到 laravel-mix v4 后,当我运行 npm run watch 时,出现错误:

webpack 未安装,

考虑使用 npm install 安装它 --save-dev webpack

即使 Webpack v4.33.0 已在我的 node_modules 中明确安装并可用。这是我的 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": {
    ...
    "laravel-mix": "^4.0.16",
    "webpack": "^4.33.0"
  }
}

这是我的 webpack.mix.js:

mix.js('resources/assets/js/app.js','public/js/app.js')
.browserSync({
    proxy: 'app.test',
    notify: false,
    open: true,
    port: 8080
})
.options({
    extractVueStyles: OUTPUTCSS + 'app.css'
});

在将我的 laravel-mix 更新到 v4 之前,这不是问题,这似乎是什么问题?

--- 更新 ---

这里是npm debug log

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'run', 'watch' ]
2 info using npm@6.2.0
3 info using node@v10.9.0
4 verbose run-script [ 'prewatch', 'watch', 'postwatch' ]
5 info lifecycle @~prewatch: @
6 info lifecycle @~watch: @
7 verbose lifecycle @~watch: unsafe-perm in lifecycle true
8 verbose lifecycle @~watch: PATH: /usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/main_user/projects/test_project/node_modules/.bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
9 verbose lifecycle @~watch: CWD: /Users/main_user/projects/test_project
10 silly lifecycle @~watch: Args: [ '-c', 'npm run development -- --watch' ]
11 silly lifecycle @~watch: Returned: code: 1  signal: null
12 info lifecycle @~watch: Failed to exec watch script
13 verbose stack Error: @ watch: `npm run development -- --watch`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:304:16)
13 verbose stack     at EventEmitter.emit (events.js:182:13)
13 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:182:13)
13 verbose stack     at maybeClose (internal/child_process.js:961:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:250:5)
14 verbose pkgid @
15 verbose cwd /Users/main_user/projects/test_project
16 verbose Darwin 18.6.0
17 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "watch"
18 verbose node v10.9.0
19 verbose npm  v6.2.0
20 error code ELIFECYCLE
21 error errno 1
22 error @ watch: `npm run development -- --watch`
22 error Exit status 1
23 error Failed at the @ watch script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

【问题讨论】:

  • 在这些情况下,我只需完全删除 node_modules 并从头开始另一个 npm install
  • @Chris 没有骰子 :(
  • @Chris 检查更新的问题,添加调试日志
  • 在尝试为另一个错误创建最小复制后,我自己遇到了这个问题。这是 github 问题:github.com/webpack/webpack/issues/9242
  • 我刚遇到这个问题,我必须使用旧版本的 webpack 来临时修复它。从“webpack”:“^4.33.0”到“webpack”:“4.12.2”。

标签: node.js laravel npm webpack laravel-mix


【解决方案1】:

webpack/webpack-cli#944发现了一个类似的问题

当 webpack.config.js 模块 require()s 缺少模块或未使用 npm 安装要求时,这似乎会发生

【讨论】:

    【解决方案2】:

    您也可以尝试将webpack-cli 版本更改为2.1.3 验证您没有使用任何已弃用的插件。我不得不将 GlobCopyWebpackPlugin 更改为 CopyWebpackPlugin

    【讨论】:

      猜你喜欢
      • 2017-11-11
      • 1970-01-01
      • 2019-01-16
      • 2018-11-03
      • 2020-05-28
      • 2022-01-14
      • 2018-04-18
      • 2020-09-25
      • 1970-01-01
      相关资源
      最近更新 更多