我正在尝试在heroku雪松堆上运行phantomjs。
我正在为heroku https://github.com/stomita/heroku-buildpack-phantomjs使用phantomjs buildpack。
但是我按照说明操作但仍无法使其正常工作。
当我运行命令heroku run bash
并输入phantomjs --version
时,它会显示phantomjs: command not found
我读过有关需要设置为“/ usr / local / lib:/ usr / lib:/ lib:/ app / vendor / phantomjs / lib”的LD_LIBRARY_PATH的内容,这就是我所做的但没有成功。< / p>
我有什么遗失的东西吗? buildpack在哪里安装phantomjs二进制文件?有没有办法知道二进制文件的路径?
我正在使用ruby 1.9.2
非常感谢你的帮助。
编辑:更确切地说,我想结合ruby和phantomjs,所以我使用这个自定义buildpack:https://github.com/ddollar/heroku-buildpack-multi,但是当我推送到heroku时我得到“Heroku推送被拒绝,无法编译Multipack应用程序“答案 0 :(得分:27)
从phantomjs.org这里下载64位Linux二进制文件http://phantomjs.org/download.html
如果您还没有bin /目录,请在应用中创建bin /目录并将二进制文件放在那里。然后,您应该可以测试是否可以使用“heroku run'phantotjs'”或“heroku run'bin / phantomjs'”来运行它。
答案 1 :(得分:1)
我不知道前面的示例是否确实必要,因为我使用的是javascript,它应该没有什么不同。对我来说,我要做的就是将phantomjs buildpack放在您的主服务器上已安装的buildpacks列表中的第一个。
打开终端,然后键入:
heroku buildpacks
这将显示可用的构建包。 例如。
1.heroku/node.js
2.https://github.com/stomita/heroku-buildpack-phantomjs.git
如您所见,buildpack在此列表中排名第二。我们需要使其成为列表中的第一个。因此,我所做的是我删除了phantomjs builpack,然后再次添加了它,但是这次确保了它在所有可用buildpack列表中的第一个。
因此,要删除构建包,请输入:
heroku buildpacks:remove https://github.com/stomita/heroku-buildpack-phantomjs.git
这将删除buildpack。您可以通过输入以下内容进行检查:
heroku buildpacks
现在,它应该只显示
1.heroku/node.js
太好了,现在我们添加phantomjs buildack来确保它是first。如此终端类型:
heroku buildpacks:add --index 1 https://github.com/stomita/heroku-buildpack-phantomjs.git
您可以通过输入以下内容来检查它是否是第一个:
heroku buildpacks
现在应该是,
1.https://github.com/stomita/heroku-buildpack-phantomjs.git
2.heroku/node.js
现在,在终端上,输入:
heroku run bash
一旦您参加了bash,请输入
phantomjs --version
phantomjs的当前版本应显示在终端上。
2.1.1