Мой проект rails терпит неудачу после обновления до ruby ​​1.9.2 на OS X - PullRequest
0 голосов
/ 05 февраля 2011

Я обновил ruby ​​до 1.9.2, rubygems 1.5.0 и установил последние рельсы 3.0.3, следуя этому руководству:

http://hivelogic.com/articles/ruby-rails-mongrel-mysql-osx

Но теперь мой существующий проект больше не работает. Если я делаю "ruby script / about", я получаю это:

<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- /Users/sneigaard/work/rails/myproject/config/../vendor/rails/railties/lib/initializer (LoadError)
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:45:in `load_initializer'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:38:in `run'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:11:in `boot!'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:110:in `<top (required)>'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from script/about:2:in `<main>'

Если я запускаю "mongrel_rails start", я получаю эту ошибку:

** Starting Mongrel listening at 0.0.0.0:3000
** Starting Rails with development environment...
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `gem_original_require': no such file to load -- /Users/sneigaard/work/rails/myproject/config/../vendor/rails/railties/lib/initializer (LoadError)
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `require'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:45:in `load_initializer'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:38:in `run'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:11:in `boot!'
    from /Users/sneigaard/work/rails/myproject/config/boot.rb:110
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `require'
    from /Users/sneigaard/work/rails/myproject/config/environment.rb:7
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:29:in `require'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/rails.rb:147:in `rails'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:113:in `cloaker_'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:149:in `call'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:149:in `listener'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:99:in `cloaker_'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:50:in `call'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/configurator.rb:50:in `initialize'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:84:in `new'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:84:in `run'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/../lib/mongrel/command.rb:212:in `run'
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/bin/mongrel_rails:281
    from /usr/bin/mongrel_rails:19:in `load'
    from /usr/bin/mongrel_rails:19

В скрипте / сервере у меня есть это:

#!/usr/bin/env ruby
require File.expand_path('../../config/boot', __FILE__)
require 'commands/server'

Я искал и искал в сети, но я не могу понять это, и мой проект застрял :( Пожалуйста, помогите мне.

Спасибо
Сорен

Ответы [ 3 ]

1 голос
/ 05 февраля 2011

некоторая неверная конфигурация с вашим рубином, если вы наберете

which ruby
gem environment

и

ruby -v

это все коэффициенты?

Я предложу использовать RVM очень очень просто настроить хорошую документацию и использовать ее для вашего бизнеса.

также кажется, что ваш проект все еще в рельсах 2.3. * Не 3.0. *, В рельсах 3 thear - это не скрипт / серверный скриптфайл.установите rvm ruby ​​1.9.2 и правильный камень для вашего проекта.

надеюсь, это поможет.

1 голос
/ 05 февраля 2011

это rails server это выплевывает ту же ошибку? вы, кажется, используете команды rails 2 в rails 3. также загружены ли все ваши гемы в 1.9.2? Вы должны перезагрузить все при переключении рубинов.

0 голосов
/ 29 сентября 2011

У меня была эта проблема при обновлении приложения с 1.8.7 до 1.9.2.
В Ruby 1.9.2 Kernel.require не работает как 1.8, вместо этого кажется, что они хотят, чтобы вы использовали Kernel.require_relative

Здесь вы найдете решения, которые будут работать в обоих рубинах

Ruby: требуют vs require_relative - передовой метод для обхода в обоих Ruby <1.9.2 и> = 1.9.2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...