没有这样的文件来加载乘客和Sinatra

Kev*_*tre 7 passenger sinatra

我最近更新到Ruby 1.9.2(RVM),Sinatra 1.1和Passenger 3.0.0.我有一个简单的应用程序组成:

# config.ru

require 'rubygems'
require 'sinatra'
require 'app.rb'

run Sinatra::Application

# app.rb

require 'rubygems'
require 'sinatra'

get '/' do
  erb :index
end
Run Code Online (Sandbox Code Playgroud)

如果我使用ruby app.rbeverythign按预期从终端运行应用程序.但是,乘客我得到:no such file to load -- app.rb.我有其他Rails应用程序运行良好的设置,并已将文档根设置为子公共目录.任何想法如何解决这一问题?谢谢!

inc*_*ude 17

我在这里遇到了同样的问题:

# config.ru

require 'rubygems'
require 'sinatra'

require File.dirname(__FILE__) + "/app.rb"

run Sinatra::Application
Run Code Online (Sandbox Code Playgroud)


Kev*_*tre 9

管理以解决问题.由于某种原因想出config.ru要求相对于当前目录指定include.修改后的文件是:

# config.ru

require 'rubygems'
require 'sinatra'
require './app.rb'

run Sinatra::Application
Run Code Online (Sandbox Code Playgroud)

  • 需要路径在ruby 1.9中是相对的,除了安装的不需要路径的宝石. (2认同)