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