1

我在我的 Gem 文件中声明的本地机器上有一个 Gem,如下所示:

group :assets do gem 'my_gem', path: "/Users/me/path/to/my_gem" end

这在本地工作得很好,但是当我在 Heroku 上进行暂存时,构建失败,因为 gem 不可用。

目前我不得不在部署之间评论/取消评论这个宝石,这真的很痛苦。

我也尝试将它添加到我的开发组,但这没有帮助。

Heroku 为什么要寻找这颗宝石?

4

2 回答 2

2

Bundler 总是需要解析 Gemfile 中的所有 gem。您不应该提交包含本地路径的 Gemfile。

相反,将您的 gem 推送到可从 Heroku 访问的 git 存储库,并在您的 Gemfile 中指向该存储库。

对于开发,您可以使用本地路径覆盖:http ://bundler.io/v1.3/git.html#local

于 2013-08-23T04:25:19.407 回答
1

您可以尝试将 gem 放在vendor/gems目录中,如果它不存在则创建它。然后在您的 Gemfile 中这样做:

gem 'rails_multisite', path: 'vendor/gems/rails_multisite'

并确保您运行bundle update以便 Heroku 可以获取更改

于 2013-08-15T12:56:30.553 回答