Bundler:有没有办法设置版本?
Bundler : Is there a way to set the version?
尝试 运行 'bundle install' 时,我收到此消息:
Bundler could not find compatible versions for gem "bundler":
In Gemfile:
rails (= 5.0.2) was resolved to 5.0.2, which depends on
bundler (>= 1.3.0, < 2.0)
Current Bundler version:
bundler (2.1.2)
This Gemfile requires a different version of Bundler.
Perhaps you need to update Bundler by running `gem install bundler`?
Could not find gem 'bundler (>= 1.3.0, < 2.0)', which is required by gem 'rails (= 5.0.2)', in any of the sources.
Bundler could not find compatible versions for gem "pg":
In Gemfile:
pg (= 0.18.3)
jsonb_accessor (~> 1.0.0) was resolved to 1.0.0, which depends on
pg (>= 0.18.1)
然后,我想我需要更改我的捆绑程序版本为什么是 2.1.2,我想更改为 1.17.3。
gem list
命令表示:
bundler (default 1.17.3)
但是 bundle -v
命令说:
Bundler version 2.1.2
我正在使用 ruby 2.5.1 和 RVM。
你知道怎么做吗?
我读到我可以使用 bundle config set 但它什么也没做。
Bundler 安装一个二进制文件,在读取 Gemfile 之前调用该二进制文件,因此您需要删除正在使用的版本并安装所需的版本。
您可以使用 RVM 执行以下操作:
rvm @global do gem uninstall bundler -a -x -I || true
gem install bundler -v '= 1.17.3'
如果您在项目之间跳转,您可能需要经常这样做,或者您可以这样做:
gem install bundler -v '= 1.17.3'
而不是使用 bundle install
,使用:
bundle _1.17.3_ install
指定捆绑器的版本 gem 被使用。
我建议您考虑升级 Rails,不仅是为了获得受支持的版本(具有安全更新),而且还允许您再次升级 bundler
。
您需要手动删除有问题的 ruby 版本上的目录:例如,如果 2.5.1 ruby 版本存在捆绑程序问题,请转到此路径:
/Users/YOUR_USER/.rvm/rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/gems/
并删除捆绑目录。
如果捆绑器在默认规范中,您还需要删除此路径上的捆绑器关联文件:
/Users/YOUR_USER/.rvm/rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/specifications/default
然后您可以使用@Unixmonkey 回答重新安装特定版本的捆绑器
尝试 运行 'bundle install' 时,我收到此消息:
Bundler could not find compatible versions for gem "bundler":
In Gemfile:
rails (= 5.0.2) was resolved to 5.0.2, which depends on
bundler (>= 1.3.0, < 2.0)
Current Bundler version:
bundler (2.1.2)
This Gemfile requires a different version of Bundler.
Perhaps you need to update Bundler by running `gem install bundler`?
Could not find gem 'bundler (>= 1.3.0, < 2.0)', which is required by gem 'rails (= 5.0.2)', in any of the sources.
Bundler could not find compatible versions for gem "pg":
In Gemfile:
pg (= 0.18.3)
jsonb_accessor (~> 1.0.0) was resolved to 1.0.0, which depends on
pg (>= 0.18.1)
然后,我想我需要更改我的捆绑程序版本为什么是 2.1.2,我想更改为 1.17.3。
gem list
命令表示:
bundler (default 1.17.3)
但是 bundle -v
命令说:
Bundler version 2.1.2
我正在使用 ruby 2.5.1 和 RVM。
你知道怎么做吗?
我读到我可以使用 bundle config set 但它什么也没做。
Bundler 安装一个二进制文件,在读取 Gemfile 之前调用该二进制文件,因此您需要删除正在使用的版本并安装所需的版本。
您可以使用 RVM 执行以下操作:
rvm @global do gem uninstall bundler -a -x -I || true
gem install bundler -v '= 1.17.3'
如果您在项目之间跳转,您可能需要经常这样做,或者您可以这样做:
gem install bundler -v '= 1.17.3'
而不是使用 bundle install
,使用:
bundle _1.17.3_ install
指定捆绑器的版本 gem 被使用。
我建议您考虑升级 Rails,不仅是为了获得受支持的版本(具有安全更新),而且还允许您再次升级 bundler
。
您需要手动删除有问题的 ruby 版本上的目录:例如,如果 2.5.1 ruby 版本存在捆绑程序问题,请转到此路径:
/Users/YOUR_USER/.rvm/rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/gems/
并删除捆绑目录。
如果捆绑器在默认规范中,您还需要删除此路径上的捆绑器关联文件:
/Users/YOUR_USER/.rvm/rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/specifications/default
然后您可以使用@Unixmonkey 回答重新安装特定版本的捆绑器