Node.js 使用babel presets/chai/mocha安装npm失败
在Ubuntu 14.04.3 LTS上,节点为v0.10.40和NPM 1.4.28Node.js 使用babel presets/chai/mocha安装npm失败,node.js,npm,mocha.js,babeljs,chai,Node.js,Npm,Mocha.js,Babeljs,Chai,在Ubuntu 14.04.3 LTS上,节点为v0.10.40和NPM 1.4.28 npm安装失败,我甚至没有在node\u modules/.bin中获得我期望的所有软链接 这似乎与chai、webpack、webpack dev server和babel-preset-es2015/babel-preset react有关。如果我把柴拿出来,它就会起作用。如果我拿出巴别塔预设软件包,它就会工作。如果他们都在那里,那就没有了 最小损坏包数。json 下面是一个小的packages.json
npm安装
失败,我甚至没有在node\u modules/.bin中获得我期望的所有软链接
这似乎与chai
、webpack
、webpack dev server
和babel-preset-es2015
/babel-preset react
有关。如果我把柴拿出来,它就会起作用。如果我拿出巴别塔预设软件包,它就会工作。如果他们都在那里,那就没有了
最小损坏包数。json
下面是一个小的packages.json
config,它会中断:
{
"name": "voting-client",
"version": "1.0.0",
"description": "",
"main": "index.jsx",
"scripts": {
"webpack": "webpack",
"webpack-dev-server": "webpack-dev-server --host 0.0.0.0",
"test": "mocha --compilers js:babel-core/register --require ./test/test_helper.js 'test/**/*.@(js|jsx)'",
"test:watch": "npm run test --watch"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-core": "^6.0.20",
"babel-loader": "^6.0.1",
"babel-preset-es2015": "^6.0.15",
"babel-preset-react": "^6.0.15",
"chai": "^3.4.0",
"mocha": "^2.3.3",
"webpack": "^1.12.2",
"webpack-dev-server": "^1.12.1"
},
"dependencies": {
}
}
实际软件包。json
下面是我的实际packages.json
config,它也会破坏:
{
"name": "voting-client",
"version": "1.0.0",
"description": "",
"main": "index.jsx",
"scripts": {
"webpack": "webpack",
"webpack-dev-server": "webpack-dev-server --host 0.0.0.0",
"test": "mocha --compilers js:babel-core/register --require ./test/test_helper.js 'test/**/*.@(js|jsx)'",
"test:watch": "npm run test --watch"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-core": "^6.0.20",
"babel-loader": "^6.0.1",
"babel-preset-es2015": "^6.0.15",
"babel-preset-react": "^6.0.15",
"chai": "^3.4.0",
"chai-immutable": "^1.5.1",
"jsdom": "^7.0.2",
"mocha": "^2.3.3",
"react-hot-loader": "^1.3.0",
"webpack": "^1.12.2",
"webpack-dev-server": "^1.12.1"
},
"dependencies": {
"immutable": "^3.7.5",
"react": "^0.14.2",
"react-dom": "^0.14.2"
}
}
npm安装错误
仔细查看npm安装
我可以看到它在一个子包utf-8-validate
上失败。我知道我的吉普赛安装可以正常工作,因为它在另一个项目中编译socket.io
没有问题
web23@wendy:/var/www/io.ofbeaton.com/web/dev/voting-client$ npm install
npm WARN package.json voting-client@1.0.0 No description
npm WARN package.json voting-client@1.0.0 No repository field.
npm WARN package.json voting-client@1.0.0 No README data
npm WARN optional dep failed, continuing fsevents@1.0.5
npm WARN optional dep failed, continuing fsevents@1.0.5
\
> utf-8-validate@1.2.1 install /var/www/clients/client1/web23/web/dev/voting-client/node_modules/webpack-dev-server/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate
> node-gyp rebuild
make: Entering directory `/var/www/clients/client1/web23/web/dev/voting-client/node_modules/webpack-dev-server/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate/build'
CXX(target) Release/obj.target/validation/src/validation.o
Killed
web23@wendy:/var/www/io.ofbeaton.com/web/dev/voting-client$ SOLINK_MODULE(target) Release/obj.target/validation.node
SOLINK_MODULE(target) Release/obj.target/validation.node: Finished
COPY Release/validation.node
make: Leaving directory `/var/www/clients/client1/web23/web/dev/voting-client/node_modules/webpack-dev-server/node_modules/socket.io/node_modules/engine.io/node_modules/ws/node_modules/utf-8-validate/build'
具体请参见Killed
行。这就是我在坏的安装上得到的所有输出。这是怎么发生的?我怎样才能修好它
无预设的工作示例:
这是一个没有babel预设的工作包.json
{
"name": "voting-client",
"version": "1.0.0",
"description": "",
"main": "index.jsx",
"scripts": {
"webpack": "webpack",
"webpack-dev-server": "webpack-dev-server --host 0.0.0.0",
"test": "mocha --compilers js:babel-core/register --require ./test/test_helper.js 'test/**/*.@(js|jsx)'",
"test:watch": "npm run test --watch"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-core": "^6.0.20",
"babel-loader": "^6.0.1",
"chai": "^3.4.0",
"mocha": "^2.3.3",
"webpack": "^1.12.2",
"webpack-dev-server": "^1.12.1"
},
"dependencies": {
}
}
编辑:问题是旧节点版本吗?
似乎表明旧节点版本会导致此问题
所以我将node升级到v5.0.0,将npm升级到3.3.6
以下是“npm安装”输出:
web23@wendy:/var/www/io.ofbeaton.com/web/dev/voting-client$ npm install
npm WARN install Couldn't install optional dependency: Unsupported
extract → gunzTarPerm ▐ ╢█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░╟
Killed
没有骰子。在旧版本的node上编译时,第一个问题确实是utf-8-validate
问题。为此,我使用了v5.0.0版本。请注意,我必须抓取setup_5.x
文件,而不是指南中描述的setup
文件
下一个问题是,我在执行npm安装时收到了一条Killed
消息。这是因为我运行的机器只有不到512mb的ram和256mb的交换空间。这听起来非常小,但它是一个基本的ubuntu服务器,在最低规格范围内,在数据中心作为虚拟机运行。我可以一次安装一个单独的包,但是一次安装会耗尽内存,并产生Killed
消息。唯一的解决方案是增加我的ram和交换,或者在不同的机器上运行它并上传文件。不太理想,但这是休息时间
我现在已经让它正常工作了