1
下面是显示在浏览器中的黄瓜运行的结果简单的末日应用:BACKTICK执行本地但不是适用于服务器
require 'sinatra'
get '/' do
`cucumber features --format html`
end
get '/ls' do
`ls`
end
根路径工作正常,并不会是我想要我的本地机器上的:它执行黄瓜并显示结果。问题是在我的服务器上出现错误No such file or directory - cucumber features --format html
。
故障排除我已经这样做了远东
- 冉
ls
路线。它既可以在本地也可以在服务器上运行,并且显示来自我期望的目录中的结果 - 与Sinatra应用程序运行的目录相同。 - 从命令行通过服务器上的ssh运行
cucumber features --format html
。再次,它工作正常,输出是我所期望的。
那么,为什么我在使用ruby的反引号通过sinatra运行时遇到错误?
谢谢!
正如我在op中所说的,从命令行通过ssh运行黄瓜很好,所以它必须安装在服务器上。另外,我知道,因为我安装它:)它不是通过捆绑软件安装,而是简单地用'gem install cucumber' – Jonah 2012-07-21 05:30:30
有趣。你使用的是rvm还是rbenv,并且可能gem bin文件夹不在服务器shell的路径中?最容易检查的方法是从服务器打印$ PATH。 – 2012-07-21 05:38:09
这是问题所在。它在我的道路上,但不在Web服务器的路径上。谢谢Tanzeeb! – Jonah 2012-07-21 05:45:04