sh:1:rimraf:每当我在Windows 10上安装的npm run build of vagrant中运行时都找不到

时间:2018-03-04 04:56:01

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

我想在Vagrant中运行一个webpack项目(安装在Windows 10上),我在其中嵌入了一个Ubuntu 16.04虚拟机。

我能够非常成功地安装npm 5.6.0nodejs v8.9.4

我尝试运行npm install来安装所有依赖项。收到这些错误后:

...
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-116-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /vagrant/src/my_project/static/node_modules/contextify
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
...

我试过:npm install --no-bin-links,它给了我同样的错误。

然后我运行:npm run build

现在我一直收到这个错误:

sh: 1: rimraf: not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! my-project@1.0.0 clean: `rimraf dist`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the my-project@1.0.0 clean 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!     /home/vagrant/.npm/_logs/2018-03-04T04_44_09_988Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-project@1.0.0 build: `npm run clean && webpack`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-project@1.0.0 build 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!     /home/vagrant/.npm/_logs/2018-03-04T04_44_10_048Z-debug.log

这是我的package.json:

{
  "name": "my-project",
  "version": "1.0.0",
  "description": "project",
  "main": "index.js",
  "scripts": {
    "clean": "rimraf dist",
    "build": "npm run clean && webpack",
    "serve": "webpack-dev-server"
  },
  "repository": "",
  "author": "Edgar KAMDEM",
  "license": "ISC",
  "dependencies": {
    "acorn": "^5.5.0",
    "axios": "^0.17.1",
    "bootstrap": "^4.0.0-alpha.6",
    "fabric": "^1.7.22",
    "file-loader": "^1.1.5",
    "font-awesome": "^4.7.0",
    "jquery": "^3.2.1",
    "jquery-ui-dist": "^1.12.1",
    "lodash": "^4.17.4",
    "mxgraph": "^3.8.0",
    "popper.js": "^1.12.9",
    "react": "^16.2.0",
    "react-dom": "^16.2.0",
    "react-input-range": "^1.2.2",
    "react-redux": "^5.0.6",
    "react-router": "^4.2.0",
    "react-router-dom": "^4.2.2",
    "redux": "^3.7.2",
    "redux-form": "^7.2.0",
    "redux-promise": "^0.5.3",
    "redux-thunk": "^2.2.0"
  },
  "devDependencies": {
    "autoprefixer": "^7.1.6",
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.2",
    "css-loader": "^0.28.7",
    "extract-text-webpack-plugin": "^3.0.2",
    "html-webpack-plugin": "^2.30.1",
    "node-sass": "^4.7.2",
    "postcss-loader": "^2.0.9",
    "precss": "^2.0.0",
    "rimraf": "^2.6.2",
    "sass-loader": "^6.0.6",
    "style-loader": "^0.19.0",
    "webpack": "^3.11.0",
    "webpack-dev-server": "^2.11.2"
  }
}

不知道该怎么办,我迷路了。我在Google上尝试了一切(Github,SO等)。没什么办法。

请帮忙!

2 个答案:

答案 0 :(得分:3)

在极少数情况下,npm install -g @angular/cli@latest将无法在以下位置创建文件 bin.js

C:\Users\{{user}}\AppData\Roaming\npm\node_modules\rimraf

因此,请先尝试运行以下命令来创建丢失的文件

npm i -g rimraf

现在您可以运行npm install -g @angular/cli@latest,它将安装有角度的问题

答案 1 :(得分:1)

只需将此脚本添加到您的package.json

"scripts": {
    ...
    "rimraf": "./node_modules/rimraf/bin.js",
}

当前行为是寻找全局安装的rimraf(您也可以通过执行npm i -g rimraf来完成此操作),但是上面的行说它应该使用本地项目的版本。