metode terdefinisi `plain_specs 'untuk # <Bundler :: RubygemsIntegration: 0x00005633f09a9000> (NoMethodError)

13

Saya telah membuat proyek yang saya miliki dalam pekerjaan saya dan ketika saya mencoba menjalankan rails db:migrate, terminal meminta untuk menginstal "Bundler 2" jadi saya melakukannya.

Sekarang, ketika saya mencoba melakukan rails db:migratesaya memiliki kesalahan berikut:

/home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:84:in `setup': undefined method `plain_specs' for #<Bundler::RubygemsIntegration:0x00005633f09a9000> (NoMethodError)
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:124:in `check'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:131:in `<top (required)>'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:168:in `require'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:168:in `rescue in require'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:178:in `require'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/rubygems-bundler-1.4.5/lib/rubygems_executable_plugin.rb:4:in `block in <top (required)>'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/executable-hooks-1.5.0/lib/executable-hooks/hooks.rb:50:in `block in run'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/executable-hooks-1.5.0/lib/executable-hooks/hooks.rb:49:in `each'
    from /home/acartesc/.rvm/rubies/ruby-2.4.3/lib/ruby/gems/2.4.0/gems/executable-hooks-1.5.0/lib/executable-hooks/hooks.rb:49:in `run'
    from /home/acartesc/.rvm/gems/ruby-2.4.3/bin/ruby_executable_hooks:10:in `<main>'

Saya menghargai bantuan Anda!

Acartes
sumber
Masalahnya tampaknya mirip dengan yang dijelaskan di sini: stackoverflow.com/questions/24833123/… yang diselesaikan dengan membuat ulang binstub.
sergio
Regenerasi binstubs tidak membantu. Saya menurunkan bundler ke 2.0.2 dan semuanya berfungsi dengan baik sekarang. Saya kira itu adalah bug 2.1.0 bundler?
Aetherus

Jawaban:

14
gem uninstall rubygems-bundler

bekerja untuk saya, saya menggunakan bundler 2.1.0

REF: https://github.com/bundler/bundler/issues/7492

Saat ditampilkan

ERROR:  While executing gem ... (Gem::InstallError)
    rubygems-bundler is not installed in GEM_HOME, try:
    gem uninstall -i /Users/xxxx/.rvm/rubies/ruby-2.5.7/lib/ruby/gems/2.5.0 rubygems-bundler

Tolong jalankan

gem uninstall -i /Users/xxxx/.rvm/rubies/ruby-2.5.7/lib/ruby/gems/2.5.0 rubygems-bundler
rokugou
sumber
0

Apa versi ruby ​​Anda? Saya memiliki masalah yang sama.

Versi ruby ​​saya adalah 2.6.3dan bundel saya tidak berfungsi dalam versi ruby ​​ini. (Bundel sudah ditingkatkan ke 2.0.2),

Jadi saya menurunkan bundel saya menjadi verion 1.17.3dan berhasil.

Saya dengan solusi ini akan membantu Anda.

Buku Chang
sumber
0

Pastikan Anda menggunakan versi ruby ​​yang didukung. Saya mengalami ini ketika mencoba untuk menggunakan jruby-9.2.9. Dengan beralih dari jruby ke ruby ​​masalah hilang.

rvm use ruby-2.5.1
spuder
sumber
0

Ini adalah bug dengan versi bundler 2.1.0.pre.2

Saya membatalkan permata bundler dan menginstal versi yang berbeda dari permata bundler

$ gem uninstall bundler
$ gem install bundler -v 2.0.2

Itu harus bekerja.

mahfuz
sumber