如何解决Windows中的“ npm ERR!code ELIFECYCLE”错误

问题描述

我正在学习javascript,为此,我正在新项目上配置webpack。 当我运行“ webpack脚本”(在package.json中)时,它可以正常运行,但不适用于“启动脚本”。而且我收到此错误“ npm ERR!code ELIFECYCLE”。我测试了在此论坛上看到的一些解决方案(1.npm缓存清理--force,2.delete package.json和节点模块3.npm安装,npm启动),但仍然无法使用。

我的package.json:

{
  "name": "todoProject","version": "1.0.0","description": "","main": "index.js","scripts": {
    "test": "echo \"Error: no test specified\" && exit 1","webpack": "webpack","start": "webpack-dev-server"
  },"keywords": [],"author": "","license": "ISC","dependencies": {
    "@babel/cli": "^7.12.1","@babel/core": "^7.12.3","@babel/preset-env": "^7.12.1","babel-loader": "^8.1.0","html-webpack-plugin": "^4.5.0","webpack": "^5.1.3","webpack-cli": "^4.1.0","webpack-dev-server": "^3.11.0"
  }
}

我的webpack.config.js:

const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");

module.exports = {
  entry: {
    main: path.join(__dirname,"src/index.js")
  },output: {
    path: path.join(__dirname,"dist"),filename: "[name].bundle.js"
  },module: {
    rules: [
      {
        test: /\.js/,exclude: /(node_modules)/,use: ["babel-loader"]
      }
    ]
  },plugins: [
    new HtmlWebpackPlugin({
      template: path.join(__dirname,"./src/index.html")
    })
  ],stats: "minimal",devtool: "source-map",mode: "development",devServer: {
    open: false,contentBase: "./dist",inline: true,port: 4000
  }
};

错误

> webpack-dev-server

internal/modules/cjs/loader.js:968
  throw err;
  ^

Error: Cannot find module 'webpack-cli/bin/config-yargs'
Require stack:
- C:\Users\dem\Documents\dymaProject\todoProject\node_modules\webpack-dev-server\bin\webpack-dev-server.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
    at Function.Module._load (internal/modules/cjs/loader.js:841:27)
    at Module.require (internal/modules/cjs/loader.js:1025:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (C:\Users\demil\Documents\dymaProject\todoProject\node_modules\webpack-dev-server\bin\webpack-dev-server.js:65:1)
    at Module._compile (internal/modules/cjs/loader.js:1137:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    at Module.load (internal/modules/cjs/loader.js:985:32)
    at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) {
  code: 'MODULE_NOT_FOUND',requireStack: [
    'C:\\Users\\dem\\Documents\\dymaProject\\todoProject\\node_modules\\webpack-dev-server\\bin\\webpack-dev-server.js'
  ]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! todoProject@1.0.0 start: `webpack-dev-server`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the todoProject@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\demil\AppData\Roaming\npm-cache\_logs\2020-10-22T0T05_36_55_879Z-debug.log

解决方法

使用npm运行脚本:

05:27:56
05:27:57
05:27:58

不是

npm start

也许webpack-dev-server 未全局安装?