Mar*_*ski 5 ruby-on-rails capybara phantomjs poltergeist
我已按照Poltergeist github页面上的说明操作,但我一直收到错误信息,表明我的PhantomJS版本错误.
具体来说,它说:
Could not find an executable 'phantomjs' that matched the requirements '~> 1.8', '>= 1.8.1'. Found versions were {"/home/marko/projects/irs_machine/bin/phantomjs"=>"50"}.
Run Code Online (Sandbox Code Playgroud)
现在,我已经下载了phantomjs v1.8.1(以及后来的v1.9.2),因此版本是正确的.这真让我疯狂.我使用Ubuntu 13.04,但我怀疑这是原因.
谷歌搜索错误返回没有任何用处.
有任何想法吗?
我已经解决了!
我发现非常奇怪的是,错误报告了phantomjs版本为"50",这是不可能的.
我已将错误跟踪到"cliver"gem,这是一个检测已安装程序版本的gem.它通过正则表达式匹配所需的版本字符串到结果
{command} -v
Run Code Online (Sandbox Code Playgroud)
现在,当我运行phantomjs -vi得到"1.8.1"时,发生了什么?仔细观察"1.8.1"并不是我回来的全部!确切地说,我得到了这个:
phantomjs -v
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
1.8.1
Run Code Online (Sandbox Code Playgroud)
我有一个fontconf错误,果然,它包含的第一个数字是"50".Cliver与标准输出匹配,因此无法获得正确的版本,因为系统正在编写错误.
一旦我重新配置50-user.conf不使用第9行,错误就消失了,并且poltergeist开始按预期工作.
| 归档时间: |
|
| 查看次数: |
2684 次 |
| 最近记录: |