我曾经使用ruby 1.9.2的gem,没有任何问题,但我在我的服务器上安装了ruby 1.9.3p125并且它停止了工作。
我的cron_error.log文件中出现以下错误:
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- bundler/setup (LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /home/APP_NAME/config/boot.rb:6
from script/rails:5:in `require'
from script/rails:5
我检查了rake,gem和ruby的路径,一切都在“/ usr / local / bin /”下,我的路径如下:
/usr/local/jdk/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/courier-imap/sbin:/usr/lib/courier-imap/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin
我正在为此奋斗数小时,任何帮助表示赞赏!
答案 0 :(得分:2)
/usr/lib/ruby/site_ruby/1.8/...
您可以使用which ruby
检查路径。
如果所有其他方法都失败了,您可以尝试rvm use 1.9.3 --default
(假设您使用的是rvm)
答案 1 :(得分:1)
安装ruby并不意味着所有宝石都已安装。
也许您需要在新的ruby安装中安装gem?
您的错误消息是在ruby 1.8路径中,而不是在新安装的ruby 1.9中。你确定你使用正确的ruby版本吗?
也许您的rails连接到旧的ruby 1.8安装?
答案 2 :(得分:0)
如果你使用rvm,你不能只是:
rvm use 1.9.3 --default
你也需要说明gemset,因此有一个接受的.rvmrc来说明gemset很重要。
rvm use ruby-1.9.3-p125@rails-3.2.3 --default
似乎也有效。
至少这是我使用上述版本的ruby和rails的经验。此外,每当宝石默认生产。因此,如果您使用何时创建cron作业,您可能还想说明:
bundle exec whenever --set 'environment=development' -w