javascript npm run build 抛出错误代码 ELIFECYCLE

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/50781775/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-29 09:16:30  来源:igfitidea点击:

npm run build throws error code ELIFECYCLE

javascriptnode.jsnpmwebpack

提问by Kirdeika

I've been following Wes Bos series "ES6 for everyone" for a while now and I got stuck on a webpack episode. Whenever I try to run "npm run build" command on my CMD i get this error:

我一直在关注 Wes Bos 系列“所有人的 ES6”有一段时间了,但我被一个 webpack 剧集困住了。每当我尝试在 CMD 上运行“npm run build”命令时,我都会收到此错误:

npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! [email protected] build: webpack --progress --watchnpm ERR! Exit status 1 npm ERR! npm ERR! Failed at the [email protected] build script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm 错误!代码 ELIFECYCLE npm ERR!错误号 1 npm 错误号![email protected] 构建:webpack --progress --watchnpm 错误!退出状态 1 npm ERR!npm 错误![email protected] 构建脚本失败。npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。

After searching for various solutions on the web I end up here in hope you guys can help me. Here is the log file of the run command:

在网上搜索了各种解决方案后,我最终在这里希望你们能帮助我。这是运行命令的日志文件:

0 info it worked
if it ends with ok
1 verbose cli['C:\Program Files\nodejs\node.exe',
  1 verbose cli 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
  1 verbose cli 'run',
  1 verbose cli 'build']
2 info using npm @5 .6 .0
3 info using node @v8 .10 .0
4 verbose run - script['prebuild', 'build', 'postbuild']
5 info lifecycle webpacktest @1 .0 .0~prebuild: webpacktest @1 .0 .0
6 info lifecycle webpacktest @1 .0 .0~build: webpacktest @1 .0 .0
7 verbose lifecycle webpacktest @1 .0 .0~build: unsafe - perm in lifecycle true
8 verbose lifecycle webpacktest @1 .0 .0~build: PATH: C: \Program Files\ nodejs\ node_modules\ npm\ node_modules\ npm - lifecycle\ node - gyp - bin;
C: \Users\ Laurynas\ Desktop\ es6.io - master\ New folder\ webpacktest\ node_modules\.bin;
C: \ProgramData\ Oracle\ Java\ javapath;
C: \Windows\ system32;
C: \Windows;
C: \Windows\ System32\ Wbem;
C: \Windows\ System32\ WindowsPowerShell\ v1 .0\;
C: \Program Files(x86)\ NVIDIA Corporation\ PhysX\ Common;
C: \Program Files(x86)\ GtkSharp\ 2.12\ bin;
C: \Program Files\ nodejs\;
C: \Program Files\ Git\ cmd;
C: \Users\ Laurynas\ AppData\ Roaming\ npm;
C: \Program Files\ Microsoft VS Code\ bin
9 verbose lifecycle webpacktest @1 .0 .0~build: CWD: C: \Users\ Laurynas\ Desktop\ es6.io - master\ New folder\ webpacktest
10 silly lifecycle webpacktest @1 .0 .0~build: Args: ['/d /s /c', 'webpack --progress --watch']
11 silly lifecycle webpacktest @1 .0 .0~build: Returned: code: 1 signal: null
12 info lifecycle webpacktest @1 .0 .0~build: Failed to exec build script
13 verbose stack Error: webpacktest @1 .0 .0 build: `webpack --progress --watch`
13 verbose stack Exit status 1
13 verbose stack at EventEmitter. < anonymous > (C: \Program Files\ nodejs\ node_modules\ npm\ node_modules\ npm - lifecycle\ index.js: 285: 16)
13 verbose stack at emitTwo(events.js: 126: 13)
13 verbose stack at EventEmitter.emit(events.js: 214: 7)
13 verbose stack at ChildProcess. < anonymous > (C: \Program Files\ nodejs\ node_modules\ npm\ node_modules\ npm - lifecycle\ lib\ spawn.js: 55: 14)
13 verbose stack at emitTwo(events.js: 126: 13)
13 verbose stack at ChildProcess.emit(events.js: 214: 7)
13 verbose stack at maybeClose(internal / child_process.js: 925: 16)
13 verbose stack at Process.ChildProcess._handle.onexit(internal / child_process.js: 209: 5)
14 verbose pkgid webpacktest @1 .0 .0
15 verbose cwd C: \Users\ Laurynas\ Desktop\ es6.io - master\ New folder\ webpacktest
16 verbose Windows_NT 10.0 .10586
17 verbose argv "C:\Program Files\nodejs\node.exe"
"C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js"
"run"
"build"
18 verbose node v8 .10 .0
19 verbose npm v5 .6 .0
20 error code ELIFECYCLE
21 error errno 1
22 error webpacktest @1 .0 .0 build: `webpack --progress --watch`
22 error Exit status 1
23 error Failed at the webpacktest @1 .0 .0 build script.
23 error This is probably not a problem with npm.There is likely additional logging output above.
24 verbose exit[1, true]

回答by Kirdeika

So after a while I figured out the solution, I just don't know how it worked, but here:

所以过了一段时间我想出了解决方案,我只是不知道它是如何工作的,但在这里:

I had to change my package.json file. At first it had content like this (it was shown in the tutorial exactly like this"

我不得不更改我的 package.json 文件。起初它有这样的内容(它在教程中完全像这样显示”

const webpack = require('webpack');
const nodeEnv = process.env.NODE_ENV || 'production';

module.exports = {
  devtool: 'source-map',
  entry: {
    filename: './app.js'
  },
  output: {
    filename: '_build/bundle.js'
  },
  module: {
    loaders: [{
      test: /\.js$/,
      exclude: /node_modules/,
      loader: 'babel-loader',
      query: {
        presets: ['es2015-native-modules']
      }
    }]
  },
  plugins: [
    new webpack.optimize.UglifyJsPlugin({
      compress: {
        warnings: false
      },
      output: {
        comments: false
      },
      sourceMap: true
    }),
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: JSON.stringify(nodeEnv)
      }
    })
  ]
};

And I changed whole module exports to this:

我将整个模块导出更改为:

module.exports = {
  entry: ['./app.js'],
  output: {
    path: __dirname + '/build',
    filename: 'bundle.js'
  }
}