Установка пакета не работает для rails-4.2.6 для bundler 2.0.1

#ruby-on-rails #ruby #ruby-on-rails-4.2 #ruby-2.4

#ruby-on-rails #ruby #ruby-on-rails-4.2 #ruby-2.4

Вопрос:

RVM установлен на ruby-2.4.0 , и я создал новое приложение, у которого есть версия,

 gem 'rails', '4.2.6'
  

Я обновил bundler с помощью,

 gem update --system
gem install bundler
bundle version
# Bundler version 2.0.1 (2019-01-04 commit d7ad2192f)
  

Но я получаю следующую ошибку, пока bundle install ,

 Fetching gem metadata from https://rubygems.org/.............
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    rails (= 4.2.6) was resolved to 4.2.6, which depends on
      bundler (< 2.0, >= 1.3.0)

  Current Bundler version:
    bundler (2.0.1)
This Gemfile requires a different version of Bundler.
Perhaps you need to update Bundler by running `gem install bundler`?

Could not find gem 'bundler (< 2.0, >= 1.3.0)', which is required by gem 'rails (= 4.2.6)', in any of the sources.
  

Он запрашивает у меня более низкую версию требуемого пакета, почему? Как я должен решить выше?

Ответ №1:

Установите любой пакет с версией (< 2.0, >= 1.3.0).

Например

 gem install bundler -v 1.17.3
  

И затем

 bundle _1.17.3_ install
  

Это должно сработать в вашей ситуации.

Комментарии:

1. удаление Gemfile.lock — плохая идея, потому что информация о версиях gem будет потеряна и может привести к неожиданным последствиям.

Ответ №2:

В вашем, Gemfile указывается более старая версия bundler, которая несовместима с 2.x.x. Попробуйте запустить gem install bundler -v 1.3.0 или любую другую версию, которую вы указали в своем Gemfile.lock (проверьте самый конец файла).

Комментарии:

1. Установлена старая версия, но отображается 2.0.1 для bundle --version

2. хорошо, вам, вероятно, сначала нужно удалить более новый пакет gem uninstall bundler --version 2.0.1

3. Да, последовал тому же и сработал, легко, но стало сложно, как никогда раньше! спасибо:)

4. В Gemfile.lock файле версия bundler для меня была 2.0.1, я изменил ее на 1.16.1 , поскольку моему проекту это действительно было нужно. bundle install Это работает!