Eu usei sudo bundle install
e isso pode ser a causa do problema?
Agora eu tenho:
gem -v
2.6.14ruby -v
ruby 2.3.5p376 (revisão de 14/09/2017 59905) [x86_64-darwin15]jekyll -v
jekyll 3.6.2bundle -v
Bundler versão 1.16.0.pre.3
Estou recebendo o seguinte erro ao tentar executar bundle exec jekyll serve
ou apenasjekyll 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
Além disso, ao acessar a pasta em que tenho meu blog cd my_path
, recebo a seguinte mensagem:
A VM usou seu Gemfile para selecionar Ruby, tudo bem - a Heroku também faz isso, você pode ignorar esses avisos com 'rvm rvmrc warning ignore / Library / WebServer / Documents / blog / Gemfile'. Para ignorar o aviso para todos os arquivos, execute 'rvm rvmrc warning ignore allGemfiles'. Versão desconhecida do interpretador de ruby (não sei como lidar): RUBY_VERSION.
Não faço ideia de como resolver isso. Eu só quero criar meu blog estático e, honestamente, não tenho idéia sobre Ruby, Gem ou Bundle :) Então, eu apreciaria algumas idéias!
Respostas:
O problema no meu caso é que o
Gemfile.lock
arquivo tinha umaBUNDLED_WITH
versão1.16.1
e uma versãogem install bundler
instalada2.0.1
; portanto, houve uma incompatibilidade de versão ao procurar corrigir a pastagem install bundler -v 1.16.1
consertouClaro, você também pode alterar suas
Gemfile.lock
'sBUNDLED_WITH
com últimabundler
versão e usar software recente, como Sam3000 sugerefonte
BUNDLED_WITH
versão para a versão mais recente do bundler. Isso funcionou para mim e também me salvou precisando de software desatualizado :)gem install bundler -v 1.16.1
e agora, segem.bat list bundler
eu executar , recebo o bundler (2.0.1, 1.16.1, 1.9.6). Eu não posso mudar a versão atual: execuçãobundle.bat _1.16.1 install
me dá esse erro:Could not find command "_1.16.1"
. Você tem alguma ideia, então não preciso criar uma nova pergunta? Obrigado!atualiza os rubygems e corrige o problema.
fonte
gem update --system
funcionou para mim:ruby
2.5.0 ,bundler
2.0.1 ,macOS
10.13.6 .Atualizar:
De acordo com a resposta de @ noraj e o comentário de @Niels Kristian, o seguinte comando deve fazer o trabalho.
Eu escrevi isso no caso de alguém entrar em um problema como o meu.
gem install bundler
mostra que tudo instala bem.Quando digitei
bundle
, ocorreu um erro:E na pasta
/Users/nikkov/.rvm/rubies/ruby-2.4.0/lib/ruby/gems/2.4.0/gems/
não havia umabundler-1.16.0
pasta.Eu fixo isto com
sudo gem install bundler
fonte
A resposta real está aqui se você tentar instalar o bundler 2.0.1 ou 2.0.0 devido ao Bundler exigir o RubyGems v3.0.0
Para obter mais informações, consulte: https://bundler.io/blog/2019/01/04/an-update-on-the-bundler-2-release.html
fonte
Isso corrigiu:
rm Gemfile.lock
bundle install
novamenteEDIT: NÃO FAÇA NA PRODUÇÃO!
Para produção, acesse esta resposta: https://stackoverflow.com/posts/54083113/revisions
fonte
Gemfile.lock
deve ser considerada um último recurso, pois pode levar a outros problemas.O motivo é o seu ambiente ruby atual. Você tem uma versão diferente do bundler com a versão
Gemfile.lock
.Gemfile.lock
, isso não quebrará nada se acontecer algo incampável.Gemfile.lock
e executarbundle install
.fonte
1.17
usegem install bundler -v 1.17
Se você alterou a versão ruby com a qual está usando
rvm use
, remova o Gemfile.lock e tente novamente.fonte
Abra o Gemfile.lock, que pode ser encontrado na raiz da pasta do seu aplicativo. Role até o final do arquivo e veja a versão do empacotador usada. Depois, certifique-se de instalar a versão do bundler usada:
Ou - exclua o Gemfile.lock e o pacote configurável, se você tiver uma versão superior do empacotador instalada.
A escolha é sua, meu amigo.
fonte
Gemfile.lock
pasta fez o truque!para instalar o bundler que corresponde ao seu
Gemfile.lock
uso:fonte
No meu caso, as sugestões acima não funcionaram para mim. O meu era um cenário pouco diferente.
Quando eu tentei instalar
bundler
usandogem install bundler
.. Mas eu estava recebendoentão eu tentei usar,
sudo gem install bundler
então eu estava recebendoentão eu tentei com
sudo gem install bundler -n /usr/local/bin
(apenas/usr/bin
trabalho no meu caso).E então instalado com sucesso
bundler
EDIT: eu uso o MacOS, talvez não
/usr/bin
funcione para mim por esse motivo ( https://stackoverflow.com/a/34989655/3786657 comment)fonte
Eu tive o mesmo problema hoje. I resolver este problema removendo qualquer
PATH
no.bashrc
para idososrvm
.fonte
Meu problema foi que eu estava usando o RVM e a versão Ruby errada foi ativada ...
Espero que isso ajude pelo menos uma pessoa
fonte
Além das muitas respostas, meu problema surgiu ao querer usar o ruby do docker como base, mas depois usar o rbenv no topo. Isso estraga muitas coisas.
Eu o corrigi neste caso:
Depois disso, rbenv funcionou bem. Não tenho certeza de como esses envars estavam sendo carregados em primeiro lugar ...
fonte
Eu rebaixei o ruby de 2.5.x para 2.4.x no meu caso particular.
fonte
Eu tive que fazer
rake clean --force
. Então fezgem install rake
e assim por diante.fonte