Rails未初始化的常数Bundler(NameError) [英] Rails uninitialized constant Bundler (NameError)
问题描述
运行诸如 rails s
或 rails c
之类的任何rails命令时,出现以下错误阻止我的heroku应用启动(相同错误):
I'm getting the following error when running any rails commands like rails s
or rails c
, it's also preventing my heroku app from starting (same error):
app/config/application.rb:7:in `<top (required)>': uninitialized constant Bundler (NameError)
from /Users/you/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:in `require'
错误消息中的第7行是:
Line 7 in the error message is:
Bundler.require(:default, Rails.env)
按 bundle exec rails 的命令执行成功,但这对heroku应用程序无济于事。我已经验证了
哪个红宝石
,哪个轨道
和哪个捆绑器
。我还尝试过启动新的rvm gemset并重新安装该捆绑包。 heroku错误是相同的:
Doing the commands as bundle exec rails s
succeeds, but that doesn't help the heroku app. I've verified which ruby
, which rails
and which bundler
. I've also tried starting a new rvm gemset and reinstalling the bundle. The heroku error is identical:
/app/config/application.rb:7:in `<top (required)>': uninitialized constant Bundler (NameError)
运行捆支票
不返回任何问题。
一些类似的问题提示:
bundle config --delete bin # Turn off Bundler's stub generator
rake rails:update:bin # Use the new Rails 4 executables
git add bin # Add bin/ to source control
但是我尝试了一下,没有任何变化。我在Rails 4上
But I tried it and got no changes. I'm on Rails 4
编辑:
我在另一个应用程序中工作并运行了 rails g model
,然后弹出:
I was working in another app and ran rails g model
and this popped up:
Bundler is using a binstub that was created for a different gem.
This is deprecated, in future versions you may need to `bundle binstub rails` to work around a system/bundle conflict.
gemfile
source 'https://rubygems.org'
ruby '2.0.0'
gem 'rails', '4.0.3'
gem 'sass-rails', '~> 4.0.1'
gem 'uglifier'
gem 'coffee-rails'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder'
gem 'bcrypt-ruby'
gem "geocoder"
gem 'gmaps4rails'
gem "paperclip"
gem 'route_translator'
gem 'aws-sdk'
gem 'ckeditor'
gem 'soundcloud'
gem 'omniauth-facebook'
gem 'twitter'
gem 'pg'
gem 'unicorn'
gem 'sass'
gem 'compass', '0.12.2'
gem 'font-awesome-rails'
gem 'acts-as-taggable-on'
gem 'json', '1.7.7'
gem 'figaro'
#for mailchimp api
gem 'gibbon'
#for deploying
gem 'capistrano', '~> 3.0.1'
gem 'capistrano-rails', '~> 1.1.0'
gem 'capistrano-bundler'
gem 'capistrano-rbenv', '~> 2.0'
gem 'exception_notification'
gem 'textacular'
gem 'mail_form'
gem 'dumper'
group :doc do
gem 'sdoc', require: false
end
# development gems
group :development, :test do
# env variables
gem "faker"
end
# Paging
gem 'kaminari'
gem 'will_paginate-bootstrap', '~> 1.0.0'
# Slugs and friendly id's
gem 'friendly_id'
# font-awesome
gem 'font-awesome-sass', '~> 4.0.2'
# production gems for heroku
group :production do
gem 'rails_12factor'
gem 'therubyracer'
gem 'execjs'
end
# Devise
gem 'devise'
gem 'chosen-rails'
# Bootstrap 3
group :development, :test do
gem 'rails_layout' # Bootstrap 3 layout generator
end
gem 'bootstrap-sass', '~> 3.0.3.0'
# RSpec
group :test, :development do
gem "rspec-rails"
gem "factory_girl_rails"
end
# Capybara
group :test do
gem "capybara"
gem 'email_spec'
end
gemfile.lock
gemfile.lock
GEM
remote: https://rubygems.org/
specs:
actionmailer (4.0.3)
actionpack (= 4.0.3)
mail (~> 2.5.4)
actionpack (4.0.3)
activesupport (= 4.0.3)
builder (~> 3.1.0)
erubis (~> 2.7.0)
rack (~> 1.5.2)
rack-test (~> 0.6.2)
activemodel (4.0.3)
activesupport (= 4.0.3)
builder (~> 3.1.0)
activerecord (4.0.3)
activemodel (= 4.0.3)
activerecord-deprecated_finders (~> 1.0.2)
activesupport (= 4.0.3)
arel (~> 4.0.0)
activerecord-deprecated_finders (1.0.3)
activesupport (4.0.3)
i18n (~> 0.6, >= 0.6.4)
minitest (~> 4.2)
multi_json (~> 1.3)
thread_safe (~> 0.1)
tzinfo (~> 0.3.37)
acts-as-taggable-on (3.1.1)
actionpack (>= 3, < 5)
activerecord (>= 3, < 5)
activesupport (>= 3, < 5)
addressable (2.3.6)
arel (4.0.2)
aws-sdk (1.38.0)
json (~> 1.4)
nokogiri (>= 1.4.4)
uuidtools (~> 2.1)
bcrypt (3.1.7)
bcrypt-ruby (3.1.5)
bcrypt (>= 3.1.3)
bootstrap-sass (3.0.3.0)
sass (~> 3.2)
builder (3.1.4)
capistrano (3.0.1)
i18n
rake (>= 10.0.0)
sshkit (>= 0.0.23)
capistrano-bundler (1.1.2)
capistrano (~> 3.0)
sshkit (~> 1.2)
capistrano-rails (1.1.0)
capistrano (>= 3.0.0)
capistrano-bundler (>= 1.0.0)
capistrano-rbenv (2.0.1)
capistrano (~> 3.0)
sshkit (~> 1.3)
capybara (2.2.1)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
chosen-rails (1.1.0)
coffee-rails (>= 3.2)
compass-rails (>= 1.1.2)
railties (>= 3.0)
sass-rails (>= 3.2)
chunky_png (1.3.0)
ckeditor (4.0.11)
mime-types
orm_adapter (~> 0.5.0)
climate_control (0.0.3)
activesupport (>= 3.0)
cocaine (0.5.4)
climate_control (>= 0.0.3, < 1.0)
coffee-rails (4.0.1)
coffee-script (>= 2.2.0)
railties (>= 4.0.0, < 5.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.7.0)
compass (0.12.2)
chunky_png (~> 1.2)
fssm (>= 0.2.7)
sass (~> 3.1)
compass-rails (1.1.7)
compass (>= 0.12.2)
sprockets (<= 2.11.0)
devise (3.2.4)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 3.2.6, < 5)
thread_safe (~> 0.1)
warden (~> 1.2.3)
diff-lcs (1.2.5)
dumper (1.5.0)
multi_json (>= 1.0)
multipart-post (>= 1.1.5)
posix-spawn (>= 0.3.6)
email_spec (1.5.0)
launchy (~> 2.1)
mail (~> 2.2)
erubis (2.7.0)
exception_notification (4.0.1)
actionmailer (>= 3.0.4)
activesupport (>= 3.0.4)
execjs (2.0.2)
factory_girl (4.4.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.4.1)
factory_girl (~> 4.4.0)
railties (>= 3.0.0)
faker (1.3.0)
i18n (~> 0.5)
faraday (0.9.0)
multipart-post (>= 1.2, < 3)
figaro (0.7.0)
bundler (~> 1.0)
rails (>= 3, < 5)
font-awesome-rails (4.0.3.1)
railties (>= 3.2, < 5.0)
font-awesome-sass (4.0.3.1)
sass (~> 3.2)
friendly_id (5.0.3)
activerecord (>= 4.0.0)
fssm (0.2.10)
geocoder (1.2.0)
gibbon (1.1.2)
httparty
multi_json (>= 1.3.4)
gmaps4rails (2.1.2)
hashie (2.1.1)
hike (1.2.3)
httmultiparty (0.3.14)
httparty (>= 0.7.3)
mimemagic
multipart-post
httparty (0.11.0)
multi_json (~> 1.0)
multi_xml (>= 0.5.2)
i18n (0.6.9)
jbuilder (2.0.6)
activesupport (>= 3.0.0, < 5)
multi_json (~> 1.2)
jquery-rails (3.1.0)
railties (>= 3.0, < 5.0)
thor (>= 0.14, < 2.0)
json (1.7.7)
jwt (0.1.11)
multi_json (>= 1.5)
kaminari (0.15.1)
actionpack (>= 3.0.0)
activesupport (>= 3.0.0)
kgio (2.9.2)
launchy (2.4.2)
addressable (~> 2.3)
libv8 (3.16.14.3)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mail_form (1.5.0)
actionmailer (>= 3.2, < 5)
activemodel (>= 3.2, < 5)
mime-types (1.25.1)
mimemagic (0.2.1)
mini_portile (0.5.3)
minitest (4.7.5)
multi_json (1.9.2)
multi_xml (0.5.5)
multipart-post (2.0.0)
net-scp (1.2.0)
net-ssh (>= 2.6.5)
net-ssh (2.8.0)
nokogiri (1.6.1)
mini_portile (~> 0.5.0)
oauth2 (0.9.3)
faraday (>= 0.8, < 0.10)
jwt (~> 0.1.8)
multi_json (~> 1.3)
multi_xml (~> 0.5)
rack (~> 1.2)
omniauth (1.2.1)
hashie (>= 1.2, < 3)
rack (~> 1.0)
omniauth-facebook (1.6.0)
omniauth-oauth2 (~> 1.1)
omniauth-oauth2 (1.1.2)
faraday (>= 0.8, < 0.10)
multi_json (~> 1.3)
oauth2 (~> 0.9.3)
omniauth (~> 1.2)
orm_adapter (0.5.0)
paperclip (4.1.1)
activemodel (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.5.3)
mime-types
pg (0.17.1)
polyglot (0.3.4)
posix-spawn (0.3.8)
rack (1.5.2)
rack-test (0.6.2)
rack (>= 1.0)
rails (4.0.3)
actionmailer (= 4.0.3)
actionpack (= 4.0.3)
activerecord (= 4.0.3)
activesupport (= 4.0.3)
bundler (>= 1.3.0, < 2.0)
railties (= 4.0.3)
sprockets-rails (~> 2.0.0)
rails_12factor (0.0.2)
rails_serve_static_assets
rails_stdout_logging
rails_layout (1.0.14)
rails_serve_static_assets (0.0.2)
rails_stdout_logging (0.0.3)
railties (4.0.3)
actionpack (= 4.0.3)
activesupport (= 4.0.3)
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
raindrops (0.13.0)
rake (10.3.0)
rdoc (3.12.2)
json (~> 1.4)
ref (1.0.5)
route_translator (3.2.0)
rspec-core (2.14.8)
rspec-expectations (2.14.5)
diff-lcs (>= 1.1.3, < 2.0)
rspec-mocks (2.14.6)
rspec-rails (2.14.2)
actionpack (>= 3.0)
activemodel (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 2.14.0)
rspec-expectations (~> 2.14.0)
rspec-mocks (~> 2.14.0)
sass (3.2.19)
sass-rails (4.0.3)
railties (>= 4.0.0, < 5.0)
sass (~> 3.2.0)
sprockets (~> 2.8, <= 2.11.0)
sprockets-rails (~> 2.0)
sdoc (0.3.20)
json (>= 1.1.3)
rdoc (~> 3.10)
simple_oauth (0.2.0)
soundcloud (0.3.2)
hashie (~> 2.0)
httmultiparty (~> 0.3.0)
sprockets (2.11.0)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
sprockets-rails (2.0.1)
actionpack (>= 3.0)
activesupport (>= 3.0)
sprockets (~> 2.8)
sshkit (1.4.0)
net-scp (>= 1.1.2)
net-ssh (>= 2.8.0)
term-ansicolor
term-ansicolor (1.3.0)
tins (~> 1.0)
textacular (3.2.0)
activerecord (>= 3.0, < 4.2)
therubyracer (0.12.1)
libv8 (~> 3.16.14.0)
ref
thor (0.19.1)
thread_safe (0.3.3)
tilt (1.4.1)
tins (1.1.0)
treetop (1.4.15)
polyglot
polyglot (>= 0.3.1)
turbolinks (2.2.2)
coffee-rails
twitter (4.8.1)
faraday (~> 0.8, < 0.10)
multi_json (~> 1.0)
simple_oauth (~> 0.2)
tzinfo (0.3.39)
uglifier (2.2.1)
execjs (>= 0.3.0)
multi_json (~> 1.0, >= 1.0.2)
unicorn (4.8.2)
kgio (~> 2.6)
rack
raindrops (~> 0.7)
uuidtools (2.1.4)
warden (1.2.3)
rack (>= 1.0)
will_paginate (3.0.5)
will_paginate-bootstrap (1.0.0)
will_paginate (>= 3.0.3)
xpath (2.0.0)
nokogiri (~> 1.3)
PLATFORMS
ruby
DEPENDENCIES
acts-as-taggable-on
aws-sdk
bcrypt-ruby
bootstrap-sass (~> 3.0.3.0)
capistrano (~> 3.0.1)
capistrano-bundler
capistrano-rails (~> 1.1.0)
capistrano-rbenv (~> 2.0)
capybara
chosen-rails
ckeditor
coffee-rails
compass (= 0.12.2)
devise
dumper
email_spec
exception_notification
execjs
factory_girl_rails
faker
figaro
font-awesome-rails
font-awesome-sass (~> 4.0.2)
friendly_id
geocoder
gibbon
gmaps4rails
jbuilder
jquery-rails
json (= 1.7.7)
kaminari
mail_form
omniauth-facebook
paperclip
pg
rails (= 4.0.3)
rails_12factor
rails_layout
route_translator
rspec-rails
sass
sass-rails (~> 4.0.1)
sdoc
soundcloud
textacular
therubyracer
turbolinks
twitter
uglifier
unicorn
will_paginate-bootstrap (~> 1.0.0)
update2:如果我克隆存储库并捆绑安装
,并尝试运行 rails s
或任何耙任务,我复制了 bundler
错误。但是,如果我随后执行 gem install bundler
和 gem install rake
,则新的回购协议将可以正常工作。卸载并重新安装我原始回购中的两个gem不会解决此问题。很高兴我找到了一个准修复程序,但仍然想深入了解这个问题。
update2: If I clone the repo and bundle install
, and the try to run rails s
or any rake task, I replicate the bundler
errors. However, if I then do gem install bundler
and gem install rake
, the new repo will work fine. Uninstalling and reinstalling the two gems in my original repo will not fix the issue. glad I've found a quasi fix, but would still like to get to the bottom of this.
update3:我认为我已将其范围缩小为宝石,但不确定如何进行。如果我使用默认的gemset运行触发错误的命令,就没有问题,只有当我切换到该项目的gemset时,我才会出错。在使用默认gemset测试命令之前,我没有运行 bundle update
。
update3: I think I've narrowed it down to an issue with the gems, but not sure how to proceed. If I run the commands that trigger errors using my default gemset, there is no issue, it's only when I switch over to the gemset for this project that I get errors. I did not run bundle update
before testing commands with the default gemset.
update4:我已经克隆了仓库在另一台计算机上,它复制了问题。因此,我想是时候该回头再检查此问题之前的提交,看看会发生什么情况?我的另一个想法是开始注释掉gem /删除依赖项,看看是否有帮助。还有什么我想看的吗?
update4: I've cloned the repo on another machine and it replicates the issue. So I'm guessing it's time to start going back and checking commits from before this issue and see what happens? My other idea is to start commenting out gems / removing dependencies and seeing if that helps. Anything else I might want to look at?
删除所有宝石后,仍然出现带有未初始化常量
的警告。
After removing all gems, the warning with uninitialized constant
is still present.
推荐答案
这些来自 bundler FAQ 达到了目的:
#remove project-specific settings
rm -rf .bundle/
# remove project-specific cached gems and repos
rm -rf vendor/cache/
# remove the saved resolve of the Gemfile
rm -rf Gemfile.lock
然后用<$重新打包c $ c>捆绑安装
编辑:heroku deploy也无法启动,因为它使用bin / rails和my启动服务器垃圾桶都很烂。解决此问题的方法: BUNDLE INSTALL --BINSTUBS
,同样来自捆绑服务文档
edit: heroku deploy was also failing to start up because it starts the server with bin/rails s and my binstubs were all wonky. to fix this: BUNDLE INSTALL --BINSTUBS
, again from bundler docs
这篇关于Rails未初始化的常数Bundler(NameError)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!