商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Ruby环境下安装使用bundler来管理多版本的gem

Ruby环境下安装使用bundler来管理多版本的gem

  发布于2026-06-29 阅读(0)

扫一扫,手机访问

有了 Ruby 版本管理工具 rbenv,接下来就该考虑如何管理不同项目里依赖的 gem 版本了——尤其是像 Rails 这样的大块头。这时候,Bundler 就是那个帮你搞定一切的利器。关于它诞生的背景,官网上写得很清楚,这里就不展开讲了,我们直接聊点实际使用中的经验。

Ruby环境下安装使用bundler来管理多版本的gem

安装

gem install bundler

使用

先建一个项目文件夹,比如 app1,然后创建一个 Gemfile,指定你要用的 gem 和版本。代码很简单:

mkdir app1; cd app1;
echo "source 'https://ruby.taobao.org/'" > Gemfile
echo "gem 'rails,'4.1.0'" >> Gemfile
bundle install

这样就在 app1 目录下装好了 Rails 4.1.0。想确认一下当前项目用的是哪个版本?执行 bundle exec rails -v,你会看到输出 Rails 4.1.0。接着用 bundle exec rails new . --force 覆盖原来的 Gemfile,这个项目就稳稳地跑在 4.1.0 上了。

再来第二个项目 app2,这次要装 Rails 3.2.13:

mkdir app2; cd app2;
echo "source 'https://ruby.taobao.org/'" > Gemfile
echo "gem 'rails,'3.2.13'" >> Gemfile
bundle install

同样,用 bundle exec rails new . --force 就能生成基于 3.2.13 版本的应用。

两个版本都装好之后,用 gem list --local 看看,你会发现 rails 后面跟着 (4.1.0, 3.2.13)——两个版本并存。Bundler 会自动识别每个项目应该用哪个版本,保证互不干扰。但前提是:执行命令时一定要加上 bundle exec 前缀,比如:

bundle exec rails s
bundle exec rake db:create
...

少了这个前缀,系统可能调用了全局的默认版本,那就有得头疼了。

本文转载于:https://www.jb51.net/article/85752.htm 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

产品推荐

热门关注