Saya menggunakan sudo bundle install
dan itu mungkin menjadi penyebab masalah?
Sekarang saya punya:
gem -v
2.6.14ruby -v
ruby 2.3.5p376 (2017-09-14 revisi 59905) [x86_64-darwin15]jekyll -v
jekyll 3.6.2bundle -v
Bundler versi 1.16.0.pre.3
Saya mendapatkan kesalahan berikut saat mencoba menjalankan bundle exec jekyll serve
atau hanyajekyll serve
/Users/myusername/.rvm/rubies/ruby-2.3.5/lib/ruby/site_ruby/2.3.0/rubygems.rb:271:in `find_spec_for_exe': can't find gem bundler (>= 0.a) (Gem::GemNotFoundException)
from /Users/myusername/.rvm/rubies/ruby-2.3.5/lib/ruby/site_ruby/2.3.0/rubygems.rb:299:in `activate_bin_path'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/bundle:23:in `<main>'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/ruby_executable_hooks:15:in `eval'
from /Users/myusername/.rvm/gems/ruby-2.3.5/bin/ruby_executable_hooks:15:in `<MacBooMacBook-MacBook-MacBook-Pro-MacBook-PrMacBook-MacBooMacBMaMacBMaMaMaMaMaMaMaMaMacBMaMaMaMacBMa
Juga, ketika mengakses folder di mana saya memiliki blog saya, cd my_path
saya mendapatkan pesan berikut:
VM menggunakan Gemfile Anda untuk memilih Ruby, semuanya baik-baik saja - Heroku melakukannya juga, Anda dapat mengabaikan peringatan ini dengan 'rvm rvmrc ign Abaikan / Library / WebServer / Documents / blog / Gemfile'. Untuk mengabaikan peringatan untuk semua file, jalankan 'rvm rvmrc warning ignall allGemfiles'. Versi interpreter ruby tidak dikenal (tidak tahu bagaimana menangani): RUBY_VERSION.
Saya tidak tahu bagaimana menyelesaikannya. Saya hanya ingin membuat blog statis saya dan jujur saya tidak tahu tentang Ruby, Permata atau Bundel :) Jadi saya sangat menghargai beberapa wawasan!
Jawaban:
Masalahnya dalam kasus saya adalah bahwa
Gemfile.lock
file tersebut memilikiBUNDLED_WITH
versi1.16.1
dangem install bundler
versi yang diinstal2.0.1
, jadi ada ketidakcocokan versi ketika mencari ke kanan foldergem install bundler -v 1.16.1
memperbaikinyaTentu saja, Anda juga dapat mengubah Anda
Gemfile.lock
'sBUNDLED_WITH
dengan terakhirbundler
versi dan menggunakan perangkat lunak baru-baru ini, sebagai Sam3000 menyarankansumber
BUNDLED_WITH
versi ke versi bundler terbaru. Ini bekerja untuk saya dan juga menyelamatkan saya dari kebutuhan perangkat lunak yang ketinggalan zaman :)gem install bundler -v 1.16.1
dan sekarang jikagem.bat list bundler
saya menjalankan saya mendapatkan bundler (2.0.1, 1.16.1, 1.9.6). I cant mengubah versi saat ini: mengeksekusibundle.bat _1.16.1 install
memberi saya kesalahan ini:Could not find command "_1.16.1"
. Apakah Anda punya ide, jadi saya tidak perlu membuat pertanyaan baru? Terima kasih!akan memperbarui rubygems dan akan memperbaiki masalahnya.
sumber
gem update --system
bekerja untuk saya:ruby
2.5.0 ,bundler
2.0.1 ,macOS
10.13.6 .Memperbarui:
Menurut jawaban @ noraj dan komentar @Niels Kristian, perintah berikut harus melakukan pekerjaan.
Saya menulis ini jika seseorang mengalami masalah seperti saya.
gem install bundler
menunjukkan bahwa semuanya menginstal dengan baik.Saat saya mengetik
bundle
ada kesalahan:Dan dalam folder
/Users/nikkov/.rvm/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/
itu tidak adabundler-1.16.0
folder.Saya memperbaiki ini dengan
sudo gem install bundler
sumber
Jawaban sebenarnya ada di sini jika Anda mencoba menginstal bundler 2.0.1 atau 2.0.0 karena Bundler membutuhkan RubyGems v3.0.0
Untuk info lebih lanjut, lihat: https://bundler.io/blog/2019/01/04/an-update-on-the-bundler-2-release.html
sumber
Ini memperbaikinya:
rm Gemfile.lock
bundle install
lagiEDIT: JANGAN MELAKUKANNYA DALAM PRODUKSI!
Untuk produksi, buka jawaban ini: https://stackoverflow.com/posts/54083113/revisi
sumber
Gemfile.lock
harus dianggap sebagai upaya terakhir karena dapat menyebabkan masalah lain.Alasannya adalah lingkungan ruby Anda saat ini, Anda mendapatkan versi yang berbeda dari bundler dengan versi di
Gemfile.lock
.Gemfile.lock
, ini tidak akan merusak apa pun jika ada beberapa hal yang tidak kompatibel terjadi.Gemfile.lock
, dan jalankanbundle install
.sumber
1.17
Gunakangem install bundler -v 1.17
Jika Anda mengubah versi ruby yang Anda gunakan
rvm use
, hapus Gemfile.lock dan coba lagi.sumber
Buka Gemfile.lock, yang dapat ditemukan di root folder aplikasi Anda. Gulir ke akhir file dan lihat versi bundler yang digunakan. Kemudian Anda memastikan Anda menginstal versi bundler yang digunakan:
Atau - hapus Gemfile.lock dan bundle jika Anda memiliki versi bundler yang lebih tinggi diinstal.
Pilihan ada di tangan Anda, teman saya.
sumber
Gemfile.lock
folder berhasil!untuk menginstal bundler yang cocok dengan
Gemfile.lock
penggunaan Anda :sumber
Dalam kasus saya saran di atas tidak berhasil untuk saya. Skenario saya sedikit berbeda.
Ketika saya mencoba menginstal
bundler
menggunakangem install bundler
.. Tapi saya mulaikemudian saya mencoba menggunakan
sudo gem install bundler
kemudian saya mulaikemudian saya mencoba dengan
sudo gem install bundler -n /usr/local/bin
(Tidak/usr/bin
berfungsi dalam kasus saya).Dan kemudian berhasil diinstal
bundler
EDIT: Saya menggunakan MacOS, mungkin
/usr/bin
din tidak berfungsi untuk saya karena alasan itu ( https://stackoverflow.com/a/34989655/3786657 komentar)sumber
Saya memiliki masalah yang sama hari ini. Aku memecahkan masalah ini dengan menghapus
PATH
dalam.bashrc
untuk yang lebih tuarvm
.sumber
Masalah saya adalah saya menggunakan RVM dan salah mengaktifkan versi Ruby ...
Semoga ini bisa membantu setidaknya satu orang
sumber
Menambah banyak jawaban, masalah saya berasal dari keinginan untuk menggunakan batu delima sebagai basis, tetapi kemudian menggunakan rbenv di atas. Ini mengacaukan banyak hal.
Saya memperbaikinya dalam hal ini dengan:
Setelah itu, rbenv bekerja dengan baik. Tidak yakin bagaimana vv envars itu dimuat di tempat pertama ...
sumber
Saya menurunkan ruby dari 2.5.x ke 2.4.x dalam kasus khusus saya.
sumber
Saya harus melakukannya
rake clean --force
. Lalu lakukangem install rake
dan sebagainya.sumber