Запуск Rails 2.3.5: remove_const не может удалить Object :: NotSupported (NameError) - PullRequest
1 голос
/ 15 декабря 2010

Я предполагаю, что я нахожусь в аду зависимости от гемов, но если кто-то может помочь, я был бы очень признателен (поиск в Google "не может удалить Object :: NotSupported" буквально возвратил ноль результатов).

У меня есть приложение Rails 2.3.5, и я получаю эту трассировку стека при инициализации:

usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:603:in `remove_const': cannot remove Object::NotSupported (NameError)
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:603:in `remove_constant'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:603:in `instance_eval'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:603:in `remove_constant'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:549:in `new_constants_in'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:549:in `each'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:549:in `new_constants_in'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:145:in `load'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:622:in `load_application_initializers'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:621:in `each'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:621:in `load_application_initializers'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:176:in `process'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `send'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `run'
    from /data/groupsale/releases/20101214214330/config/environment.rb:9
    from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
    from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in'
    from /usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require'
    from /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/commands/server.rb:84
    from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
    from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
    from script/server:3

Я прошел через все строки config.gem, затем начал удалять инициализаторы, пока эта ошибка не исчезла, и я не начал видеть «настоящие» ошибки (о том, что я удалил), но я не смог точно определить обидчик. Есть ли у кого-нибудь (а) какой-либо совет о лучшем способе устранения неполадок или (б) звонит ли Object :: NotSupported какой-либо сигнал ... это почти кажется подозрительно общим.

Спасибо, Том

P.S. Список драгоценных камней выглядит следующим образом:

aaronh-chronic (0.3.9)
abstract (1.0.0)
actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (3.0.1, 2.3.5)
aws (2.3.26)
aws-s3 (0.6.2)
barby (0.4.2)
bitly (0.5.3)
bson (1.1.4)
bson_ext (1.1.4)
builder (2.1.2)
crack (0.1.8)
devise (1.0.9)
erubis (2.6.2)
eventmachine (0.12.6)
exceptional (2.0.26)
extlib (0.9.9)
eyrubygems (0.0.2)
facebooker (1.0.75)
facter (1.5.2)
fastercsv (1.5.3)
fastthread (1.0.7)
ferret (0.11.6)
forgery (0.3.4)
formtastic (0.9.7)
hoe (2.8.0)
hominid (2.1.0)
http_connection (1.4.0)
httparty (0.6.1)
i18n (0.5.0)
igrigorik-em-http-request (0.1.5)
jnunemaker-validatable (1.8.4)
json (1.1.3)
json_pure (1.4.6)
mime-types (1.16)
mini_magick (2.3)
money (3.1.5)
mongo (1.1.4)
mongo_ext (0.19.3)
mongo_mapper (0.8.6)
navvy (0.3.1)
ohai (0.2.0)
open4 (0.9.6)
paginator (1.1.1)
passenger (2.2.8)
plucky (0.3.6)
rack (1.0.1)
rails (2.3.5)
rails-footnotes (3.6.7)
rake (0.8.7)
RedCloth (4.2.3)
rest-client (0.9.2)
right_aws (1.10.0)
right_http_connection (1.2.4)
rmagick (2.12.2)
ruby-hmac (0.4.0)
ruby-openid (2.1.2)
rubyforge (2.0.4)
rubygems-update (1.3.6)
sparklines (0.5.2)
stomp (1.0.6)
subexec (0.0.4)
uuidtools (2.1.1)
warden (1.0.2)
whenever (0.6.2)
xml-simple (1.0.12)
yui-compressor (0.9.1)
zendesk_remote_auth (0.9.0)

Ответы [ 2 ]

1 голос
/ 16 декабря 2010

Итак, самый простой способ, который я нашел для отладки, это взломать /usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb и добавить строку для записи, что это было погрузка. Таким образом я смог изолировать плохой инициализатор.

Основной причиной этой проблемы было то, что в инициализаторе он пытался YAML :: загрузить файл конфигурации, которого не было на компьютере.

0 голосов
/ 21 октября 2014

попробуйте удалить erubis из вашего gemfile.

Я получаю ту же ошибку "ОШИБКА NameError: невозможно удалить Object :: KEY" с Erubis 2.6.5

и без этого самоцвета я получаю сообщение об ошибке в представлении, которое имеет явную ошибку с выскакиванием stacktrace

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

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