我想在共享的Linux服务器上通过ruby访问MySQL。我想我需要使用DBI模块,但我似乎无法访问它。我安装如下:
gem install -r dbi
无法将其安装在正常位置,因为我在共享服务器上并且没有权限:
WARNING: Installing to ~/.gem since /usr/lib/ruby/gems/1.8 and
/usr/bin aren't both writable.
WARNING: You don't have ~/.gem/ruby/1.8/bin in your PATH,
gem executables will not run.
它似乎确实安装成功。
然而,现在当我试图要求它时,我只是得到一个错误。所以我的代码只是:
require 'dbi'
,这会产生以下错误:
dbi_test.rb:1:in `require': no such file to load -- dbi (LoadError)
from dbi_test.rb:1
我已经尝试将LOAD_PATH环境变量设置为dbi.rb所在的目录,但这没有任何区别。
答案 0 :(得分:12)
如果它作为gem安装,你也可以在解决问题之前需要rubygems而不需要设置load_path
require 'rubygems'
require "dbi"
答案 1 :(得分:3)
我找到了答案。我需要在命令行中指定LOAD_PATH:
ruby -I$HOME/.gem/ruby/1.8/gems/dbi-0.4.1/lib/ dbi_test.r
我一直将LOAD_PATH设置为标准的UNIX环境变量。 D'哦!