我试图在Windows 7机器上安装phantomjs,我收到此错误.
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files (x86)\\nodist\\v\\nodev5.5.0\\node.exe" "C:\\Program Files (x86)\\nodist\\bin\\node_mod
ules\\npm\\bin\\npm-cli.js" "install"
npm ERR! node v5.5.0
npm ERR! npm v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! phantomjs-prebuilt@2.1.13 install: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the phantomjs-prebuilt@2.1.13 install script 'node install.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
Run Code Online (Sandbox Code Playgroud)
phantomjs github repo中记录了很多相同或者这个问题但是在我的情况下没有任何问题.
这就是我机器的状态
--phantomjs_cdnurl这里提到的 交换机https://www.npmjs.com/package/phantomjs#deciding-where-to-get-phantomjsphantomjs -v
2.1.1 但是,当我运行npm install我的项目时,它正在尝试安装phantomjs并将遇到上述错误.我从npm日志中观察到的另一件事
Considering PhantomJS found at C:\Program Files (x86)\nodist\bin\phantomjs.CMD
Found PhantomJS at C:\Program Files (x86)\nodist\bin\phantomjs.CMD ...verifying
Error verifying phantomjs, continuing { [Error: Command failed: C:\Program Files (x86)\nodist\bin\phantomjs.CMD --version
它试图运行phantomjs.CMD --version也失败了
Error verifying phantomjs, continuing { [Error: Command failed: C:\Program Files (x86)\nodist\bin\phantomjs.CMD --versio
n
internal/child_process.js:274
var err = this._handle.spawn(options);
^
TypeError: Bad argument
at TypeError (native)
at ChildProcess.spawn (internal/child_process.js:274:26)
at exports.spawn (child_process.js:362:9)
at Object.<anonymous> (C:\Program Files (x86)\nodist\bin\node_modules\phantomjs-prebuilt\bin\phantomjs:22:10)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)
at startup (node.js:139:18)
]
killed: false,
code: 1,
signal: null,
cmd: 'C:\\Program Files (x86)\\nodist\\bin\\phantomjs.CMD --version' }
Run Code Online (Sandbox Code Playgroud)
Roh*_*ith 15
作为临时工作,我可以使用--ignore-scripts安装它
npm install phantomjs-prebuilt@2.1.13 --ignore-scripts
我也在github repo中记录了一个问题
https://github.com/Medium/phantomjs/issues/649
这个问题是我正在使用的构建过程脚本的一部分,并且每次使用其他一些东西都会进行npm清理和安装.因此,这个问题在使用phantomjs自动化测试的同一台机器中多次出现.我有时间研究这个问题,似乎我的公司代理阻止了https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-windows.zip的下载.我以前知道这个并且手动安装了phantomjs二进制文件并添加到系统路径但是npm安装仍然尝试在本地下载,如下面的日志所示.
Considering PhantomJS found at C:\npm\phantomjs-2.1.1-windows\bin\phantomjs.EXE
Looks like an `npm install -g` on windows; skipping installed version.
Run Code Online (Sandbox Code Playgroud)
我的公司代理也阻止了所有phantomjs CDN网址(https://www.npmjs.com/package/phantomjs)
我使用的工作是获取phantomjs-2.1.1-windows.zip并将其复制到 C:\ Users\<用户名>\AppData\Local\Temp\phantomjs\phantomjs-2.1.1-windows.zip和这解决了构建脚本的问题.如果有人清理临时目录,问题就会回来.即使这是一个解决方案,但由于显而易见的原因,企业代理无法解除阻止:)
希望这有助于某人!
| 归档时间: |
|
| 查看次数: |
12314 次 |
| 最近记录: |