当我在nodejs模块中安装karma时,在我的日志中写道:
npm http 304 https registry.npmjs.org/proto-list
> phantomjs@1.9.1-5 install C:\Users\<user>\AppData\Roaming\npm\node_modules\karma-phantomjs-launcher\node_modules\phantomjs
> node install.js
Downloading http://phantomjs.googlecode.com/files/phantomjs-1.9.1-windows.zip
Saving to \tmp\phantomjs\phantomjs-1.9.1-windows.zip
Receiving...
C:\Users\<user>\AppData\Roaming\npm\node_modules\karma-phantomjs-launcher\node_modules\phantomjs\install.js:215
deferred.reject('Error with http request: ' + util.inspect(response.head
^
ReferenceError: util is not defined
at ClientRequest.<anonymous> (C:\Users\<user>\AppData\Roaming\npm\node_modules\karma-phantomjs-launcher\node_modules\phantomjs\install.js:215:53)
at ClientRequest.g (events.js:175:14)
at ClientRequest.EventEmitter.emit (events.js:95:17)
at HTTPParser.parserOnIncomingClient [as onIncoming] (http.js:1669:21)
at HTTPParser.parserOnHeadersComplete [as onHeadersComplete] (http.js:120:23)
at Socket.socketOnData [as ondata] (http.js:1564:20)
at TCP.onread (net.js:525:27)
npm ERR! weird error 8
npm ERR! not ok code 0
d:\nodejs>npm install util
npm http 304 https registry.npmjs.org/events.node
util@0.4.9 node_modules\util
└── events.node@0.4.9
已安装module util。 为什么不会安装业力?
答案 0 :(得分:2)
我遇到了类似的错误(虽然在Linux上)。事情是这样的:
PhantomJS自带了#34;安装程序&#34; install.js
将预编译的PhantomJS二进制文件提取到临时目录并将其解压缩到node_modules
目录中的某个位置。
我必须导出TMPDIR
变量,因为/tmp
不可写。在你的情况下,看起来\tmp
后备并没有削减它(毕竟它是Windows)。
尝试将TMPDIR
设置为指向现有目录并再次运行npm install
。
PS:任何人都可以通过有关如何在Windows上设置环境变量的说明扩展此答案吗?
答案 1 :(得分:1)
我下载了fantomjs zip,并将其替换为TMPDIR
。
在那之后,再次启动安装业力。
而这发生了。
但是当我从教程脚本启动nodejs时,我犯了错误......
但那个故事......
答案 2 :(得分:1)
这对我有用 -
在
中下载了phantomJSZip(至少它试图)C:\tmp\phantomjs
但文件大小为0kb。所以我从PhantomJS网站下载了一个并复制到那个位置。
所有的功劳归于我之前的两个答案。我刚刚搜索了zip文件。