Ruby on rails 捆绑机路径问题

Ruby on rails 捆绑机路径问题,ruby-on-rails,ruby,passenger,bundler,Ruby On Rails,Ruby,Passenger,Bundler,我已经接管了由其他人部署到服务器上的ann应用程序。设置有问题,缺少环境变量或类似问题,但我被难住了。顺便说一下,这显然是一个Rails应用程序,在REE和mod_Rails(乘客)下运行 下面是一些让我困惑的控制台日志。首先,rakedb:migrate声明我没有rails2.3.8 然而,bundler说我会: 但另一方面,gem说不: 以下是一些相关的环境变量: 最后,Ruby是这么想的: $ irb irb(main):001:0> $: => ["~/.gem", "/us

我已经接管了由其他人部署到服务器上的ann应用程序。设置有问题,缺少环境变量或类似问题,但我被难住了。顺便说一下,这显然是一个Rails应用程序,在REE和mod_Rails(乘客)下运行

下面是一些让我困惑的控制台日志。首先,rakedb:migrate声明我没有rails2.3.8 然而,bundler说我会: 但另一方面,gem说不: 以下是一些相关的环境变量: 最后,Ruby是这么想的:
$ irb
irb(main):001:0> $:
=> ["~/.gem", "/usr/lib64/rubyee/site_ruby/1.8",     
"/usr/lib64/rubyee/site_ruby/1.8/x86_64-linux", "/usr/lib64/rubyee/site_ruby", 
"/usr/lib64/rubyee/vendor_ruby/1.8", "/usr/lib64/rubyee/vendor_ruby/1.8/x86_64-linux", 
"/usr/lib64/rubyee/vendor_ruby", "/usr/lib64/rubyee/1.8", "/usr/lib64/rubyee/1.8/x86_64   
linux", "."]
irb(main):002:0> 

我的眼睛交叉了。我缺少什么?Bundler在自定义目录中安装gem。这就是
gem list
的结果不会显示它们的原因


不幸的是,我不知道为什么命令
$rake db:migrate
找不到您的gems。

使用自定义捆绑路径时,请确保在捆绑程序环境中运行rake命令

bundle exec rake db:migrate


试试看。

Hm。。。不确定我是否使用自定义捆绑路径。我不认为我设置了一个,我是否“免费”获得一个?如果您只是使用
捆绑安装
,那么gem将出现在
gem列表中
——因为它们没有,所以必须使用自定义路径。关键是,使用
bundle exec
将在加载bundle环境的情况下运行该命令,因此
bundle list
看到的所有gem都将可用。我可能应该指出,您可以通过查看RAILS\u ROOT/.bundle/config中的
bundle PATH
变量来查看gem的安装位置,虽然这与运行命令无关。我的开发环境是Mac OS X,部署环境是Centos,运行passenger。我不确定是否在自定义目录中。。。默认情况下我能得到吗?
$ bundle list
Gems included by the bundle:
[...snip]
  * actionmailer (2.3.8)
  * actionpack (2.3.8)
  * activerecord (2.3.8)
  * activeresource (2.3.8)
  * activesupport (2.3.8)
[...snip...]
  * rails (2.3.8)
$ gem list rails

*** LOCAL GEMS ***
RUBYOPT=-rauto_gem
RUBYLIB=~/.gem
$ irb
irb(main):001:0> $:
=> ["~/.gem", "/usr/lib64/rubyee/site_ruby/1.8",     
"/usr/lib64/rubyee/site_ruby/1.8/x86_64-linux", "/usr/lib64/rubyee/site_ruby", 
"/usr/lib64/rubyee/vendor_ruby/1.8", "/usr/lib64/rubyee/vendor_ruby/1.8/x86_64-linux", 
"/usr/lib64/rubyee/vendor_ruby", "/usr/lib64/rubyee/1.8", "/usr/lib64/rubyee/1.8/x86_64   
linux", "."]
irb(main):002:0>