【问题标题】:`require': no such file to load -- sinatra/base (LoadError) when running a Sinatra app (resque-web)`require': 在运行 Sinatra 应用程序 (resque-web) 时没有要加载的文件 -- sinatra/base (LoadError)
【发布时间】:2012-12-31 18:22:21
【问题描述】:

我正在运行 Resque 的 PHP 版本,并希望使用 Resque 的 Ruby 版本附带的 Sinatra 前端应用程序。 (https://github.com/defunkt/resque-web)

问题:在我的 Ubuntu 机器上,我安装了 Ruby、Gems 和 Sinatra。当我尝试启动server.rb 时,出现如下所示的错误。

几乎没有 Ruby 方面的经验,任何让这个应用程序运行的帮助都会很棒:)

错误

server.rb:1:in `require': no such file to load -- sinatra/base (LoadError)
    from server.rb:1

我做了什么

git clone https://github.com/defunkt/resque-web.git
sudo apt-get install ruby-full build-essential
sudo apt-get install rubygems
gem install sinatra
cd resque-web
ruby server.rb

红宝石

ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

尝试 2

它可能会变得更糟......

添加到 server.rb 的顶部

require 'rubygems'

错误

/usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- resque (LoadError)

尝试 3

gem install resque
ruby server.rb

错误

[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
/var/lib/gems/1.8/gems/resque-1.23.0/lib/resque/helpers.rb:6: Please install the yajl-ruby or json gem (RuntimeError)
        from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
        from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
        from /var/lib/gems/1.8/gems/resque-1.23.0/lib/resque.rb:10
        from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:59:in `gem_original_require'
        from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:59:in `require'
        from server.rb:4

做过:

gem install json gem
ruby server.rb

错误

:public is no longer used to avoid overloading Module#public, use :public_folder instead from server.rb:13

尝试 4

改变了

    set :public, "#{dir}/server/public"

    set :public_folder, "#{dir}/server/public"

现在当我ruby server.rb 时,什么都没有发生,我拿回了外壳......

【问题讨论】:

  • 你 gem install resque 了吗?
  • 不,我只需要 sinatra 应用程序。让我 gem install resque 看看会发生什么
  • gem install resque 似乎有一些进展...现在出现不同的错误(已编辑原始帖子)
  • 这里说:github.com/defunkt/resque 如果你已经将 resque 安装为 gem,你只需要在命令行上运行 resque-web
  • 现在可以使用了!所以我不应该 git clone resque-web repo?我应该使用 gems 安装 resque 并从那里执行 resque-web 以启动前端应用程序?

标签: ruby-on-rails ruby ruby-on-rails-3 sinatra resque


【解决方案1】:

使用 gems,gem install resque 安装 Resque,然后从命令行运行 resque-web。参考:github.com/defunkt/resque

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-15
    • 2012-01-07
    • 1970-01-01
    • 2011-08-10
    • 2011-11-30
    • 2016-05-09
    • 1970-01-01
    相关资源
    最近更新 更多