在共享服务器环境中需要一个ruby gem(事件机)



我用"gem-install-eventmachine"安装了eventmachine-rubygem,并通过运行gem-list--local来确认它已安装,它就会出现。我也在eventmachine目录中运行了setup.rb。

以下代码

$:.push("/home2/sthoma5/ruby/gems")  // this was in the shared server docs
require 'rubygems'
require 'eventmachine'
module EchoServer  
   def receive_data(data)
     send_data(data)
   end
end
EventMachine::run do
   host = "0.0.0.0"
   port = 80
   EventMachine::start_server host, port, EchoServer
   puts "Started EchoServer on #{host}:#{port}"
end

返回错误:

/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_requi 
re': no such file to load -- eventmachine (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'                                               
from echo.rb:4

我似乎需要以非标准的方式要求这样做,因为我在共享服务器上,无法访问某些ruby路径?但是,通过SSH,我可以导航到/usr/lib/ruby/site_ruby/1.8/rubygems.

我的eventmachine目录位于home2/sthoma5/ruby/gems/gems/eventmachine0.12.10下。

您正在运行哪个版本的Ruby?

在Ruby 1.8.x中,首先需要require 'rubygems'

最新更新