Webpack构建因EPIPE错误而失败(仅Linux子系统)

时间:2018-12-08 09:01:59

标签: node.js ubuntu npm webpack windows-10

如果我使用已安装的节点/纱线的Windows版本从命令行运行Webpack,则我的项目可以正常编译。但是,第二次我尝试从Linux子系统构建Webpack,但由于以下错误而中断:

events.js:167
      throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at WriteWrap.afterWrite [as oncomplete] (net.js:788:14)
Emitted 'error' event at:
    at onwriteError (_stream_writable.js:431:12)
    at onwrite (_stream_writable.js:456:5)
    at _destroy (internal/streams/destroy.js:40:7)
    at Socket._destroy (net.js:613:3)
    at Socket.destroy (internal/streams/destroy.js:32:8)
    at WriteWrap.afterWrite [as oncomplete] (net.js:790:10)
error Command failed with exit code 1.

注意:当我分别从Linux和Windows尝试尝试时,我确实清除了node_modules并重新下载了依赖项。

当前,这是唯一存在此问题的项目,我所有其他项目都可以正常工作。

这是我的依赖项:

  "dependencies": {
    "@date-io/date-fns": "0.0.2",
    "@firebase/app": "^0.3.5",
    "@firebase/auth": "^0.9.0",
    "@firebase/firestore": "^0.9.0",
    "@firebase/storage": "^0.2.4",
    "@material-ui/core": "^3.6.1",
    "@material-ui/icons": "^3.0.1",
    "classnames": "^2.2.6",
    "date-fns": "^2.0.0-alpha.21",
    "isomorphic-fetch": "^2.2.1",
    "material-ui-pickers": "^2.0.4",
    "react": "^16.6.3",
    "react-async-script": "^1.0.0",
    "react-dom": "^16.6.3",
    "react-dropzone": "^7.0.1",
    "react-redux": "^6.0.0",
    "react-router": "^4.3.1",
    "react-router-dom": "^4.3.1",
    "redux": "^4.0.1",
    "redux-actions": "^2.6.4",
    "redux-saga": "^0.16.2",
    "reselect": "^4.0.0"
  },
  "devDependencies": {
    "@babel/core": "^7.2.0",
    "@babel/plugin-proposal-class-properties": "^7.2.1",
    "@babel/preset-env": "^7.2.0",
    "@babel/preset-react": "^7.0.0",
    "@babel/preset-typescript": "^7.1.0",
    "@types/googlemaps": "^3.30.16",
    "@types/node": "^10.12.12",
    "@types/react": "^16.7.13",
    "@types/react-dom": "^16.0.11",
    "@types/react-redux": "^6.0.10",
    "@types/react-router": "^4.4.1",
    "@types/react-router-dom": "^4.3.1",
    "@types/redux-actions": "^2.3.1",
    "@types/webpack": "^4.4.20",
    "babel-loader": "^8.0.4",
    "babel-polyfill": "^6.26.0",
    "css-loader": "^1.0.1",
    "extract-text-webpack-plugin": "^4.0.0-beta.0",
    "favicons-webpack-plugin": "^0.0.9",
    "file-loader": "^2.0.0",
    "html-webpack-plugin": "^3.2.0",
    "image-webpack-loader": "^4.6.0",
    "node-sass": "^4.10.0",
    "path": "^0.12.7",
    "react-svg-loader": "^2.1.0",
    "resolve-url-loader": "^3.0.0",
    "sass-loader": "^7.1.0",
    "source-map-loader": "^0.2.4",
    "style-loader": "^0.23.1",
    "ts-loader": "^5.3.1",
    "tslib": "^1.9.3",
    "tslint": "^5.11.0",
    "tslint-react": "^3.6.0",
    "typescript": "^3.2.2",
    "url-loader": "^1.1.2",
    "webpack": "^4.27.1",
    "webpack-cli": "^3.1.2"
  }

2 个答案:

答案 0 :(得分:2)

根据此GitHub issue的问题是image-webpack-loader,该线程中有多种解决方案:

最受欢迎的solution

  

这显然是imagemin-mozjpeg的问题。根据这个   注释imagemin / imagemin-mozjpeg#28(注释)您需要安装   libpng16-dev(须藤apt-get install libpng16-dev)。

     

这在Ubuntu 16.04.1 LTS上为我修复了

this

  

将image-webpack-loader更新到版本4.5.0解决了此问题

还有this

  

降级到3.6.0效果很好。在Netlify和Ubuntu 16.04上一切正常。

说明:旁注favicons-webpack-plugin也引起了同样的问题。(来自@ w9jds的评论)

答案 1 :(得分:2)

对于来自Google的所有人,答案(对我而言)是将runner的{​​{1}}值更改为以下值:rails-erb-loader

bundle exec rails

有了想法here