5

我需要在我的 gemfile 中指定 ruby​​ 版本,但我在 heroku 中的应用程序使用的是旧的捆绑器版本 1.0.7。

如果我gem 'bundler', '1.3.2'在我的 gemfile 中包含它,当我推送到 heroku 时它会失败。

Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    bundler (= 1.3.2)

  Current Bundler version:
    bundler (1.0.7)

Your version of Bundler is older than the one requested by the Gemfile.
Perhaps you need to update Bundler by running `gem install bundler`.

我也尝试运行heroku run "gem install bundler",它返回权限错误。

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions into the /usr/ruby1.9.2/lib/ruby/gems/1.9.1
 directory.

如何在 heroku 中将 Bundler 版本设置为 1.3.2,以便我可以使用特定的 ruby​​ 版本?

4

1 回答 1

5

Heroku 将捆绑器作为堆栈的一部分进行管理。我猜你在 Bamboo 堆栈上,因为它使用 1.0.7 而 Cedar 使用的是 1.3.x 版本。

如果您使用的是 Bamboo,那么恐怕您别无选择,除了升级到 Cedar 之外,您将获得所有最新的好处。

于 2013-03-12T12:52:46.650 回答