npm install jquery 在 node-gyp 重建时失败

Posted

技术标签:

【中文标题】npm install jquery 在 node-gyp 重建时失败【英文标题】:npm install jquery fails on node-gyp rebuild 【发布时间】:2012-08-20 10:49:42 【问题描述】:

我似乎无法在最新版本的 npm/node 上安装 jquery。这是堆栈跟踪:

npm http GET https://registry.npmjs.org/jquery
npm http 304 https://registry.npmjs.org/jquery
npm http GET https://registry.npmjs.org/jsdom
npm http GET https://registry.npmjs.org/htmlparser/1.7.6
npm http GET https://registry.npmjs.org/xmlhttprequest
npm http GET https://registry.npmjs.org/location/0.0.1
npm http GET https://registry.npmjs.org/navigator
npm http 304 https://registry.npmjs.org/jsdom
npm http 304 https://registry.npmjs.org/xmlhttprequest
npm http 304 https://registry.npmjs.org/location/0.0.1
npm http 304 https://registry.npmjs.org/htmlparser/1.7.6
npm http 304 https://registry.npmjs.org/navigator
npm http GET https://registry.npmjs.org/cssom
npm http GET https://registry.npmjs.org/contextify
npm http GET https://registry.npmjs.org/request
npm http 304 https://registry.npmjs.org/contextify
npm http 304 https://registry.npmjs.org/cssom
npm http 304 https://registry.npmjs.org/request
npm http GET https://registry.npmjs.org/bindings
npm http 304 https://registry.npmjs.org/bindings

> contextify@0.1.3 install /root/node_modules/jquery/node_modules/jsdom/node_modules/contextify
> node-gyp rebuild

gyp ERR! configure error 
gyp ERR! stack Error: "pre" versions of node cannot be installed, use the --nodedir flag instead
gyp ERR! stack     at install (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:68:16)
gyp ERR! stack     at Object.commands.forEach.self.commands.(anonymous function) [as install] (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/node-gyp.js:56:37)
gyp ERR! stack     at getNodeDir (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:185:20)
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:105:9
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:534:7)
gyp ERR! stack     at ChildProcess.EventEmitter.emit (events.js:91:17)
gyp ERR! stack     at maybeClose (child_process.js:634:16)
gyp ERR! stack     at Socket.ChildProcess.spawn.stdin (child_process.js:806:11)
gyp ERR! stack     at Socket.EventEmitter.emit (events.js:88:17)
gyp ERR! stack     at Socket._destroy.destroyed (net.js:356:10)
gyp ERR! System Linux 2.6.32-24-server
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/node_modules/jquery/node_modules/jsdom/node_modules/contextify
gyp ERR! node -v v0.9.1-pre
gyp ERR! node-gyp -v v0.6.5
gyp ERR! not ok 
npm WARN optional dep failed, continuing contextify@0.1.3

【问题讨论】:

【参考方案1】:

我似乎无法在最新版本的 npm/node 上安装 jquery。

Node.JS 的最新版本是v0.8.8 (stable)(release notes、download)和v0.9.0 (unstable)。

您当前正在运行的是 v0.9.1-pre——从正在完成的工作到 v0.9.1 版本的开发构建。

这就是问题所在:

错误:无法安装“pre”版本的节点

您尝试安装的模块不支持在开发版本上运行。所以,你必须决定一个发布版本来试用它们。

您可能还想记下 Node.JS 使用的 versioning scheme。

【讨论】:

奇怪我在尝试在节点 0.8.6 stable 上安装 jquery 时遇到了 gyp 的问题? gyp ERR! stack Error: not found: makegyp ERR! stack at F (/usr/local/lib/node_modules/npm/node_modules/which/which.js:43:28) 嗯,刚刚用节点 0.8.8 进行了全新安装,现在工作正常……一定是某种冲突:) 奇怪...我确信我在 0.8.x 上。谢谢!

以上是关于npm install jquery 在 node-gyp 重建时失败的主要内容,如果未能解决你的问题,请参考以下文章

npm install 是不是也构建库?

npm install 在 node-sass 中抛出错误

node.js npm install 模块 无反应

Electron npm install 常见错误(Windows)

npm install git+ssh 在 docker (node16) 中失败

npm install 后缀