Heroku推被拒绝,铁路依赖冲突? Ruby on Rails教程第1.4.2节

试图将first_app推送到heroku。 看起来好像正常工作,但几秒后,我得到:

从https://rubygems.org/获取gem元数据……… Bundler找不到gem“railties”的兼容版本:在Gemfile中:rails(= 3.2.1)ruby取决于railties(= 3.2) .1)rubysass-rails(= 3.2.3)ruby取决于铁路(3.2.2.rc1)

它继续告诉我它没有安装gem,推送被拒绝。

我的Gemfile目前正如本教程中所指定的那样,但我已经尝试摆弄显式版本号以查看是否可以通过这种方式解决错误:没有运气。 我也试过做一个包更新,这给了我一个类似的错误,但直接从Bundler,而不是从Heroku推; 并删除Gemfile.lock文件,这导致其他错误令人困惑我结束删除所有内容并重新开始。

在我看来,你有团体资产的变化。 用它:

 group :assets do gem 'sass-rails', '~> 3.2.3' gem 'coffee-rails', '~> 3.2.1' # See https://github.com/sstephenson/execjs#readme for more supported runtimes gem 'therubyracer' gem 'uglifier', '>= 1.0.3' gem 'compass-rails' end 

尝试将gem更新为sass-rails~> 3.2.4,你很可能必须将jquery-rails更新为〜> 2.0.1。 然后在将应用程序推送到heroku之前运行bundle。 bundle应该告诉你是否存在进一步的依赖冲突。

我认为错误是由于从教程中运行不同版本的gem引起的。 运行gem -v以找出您正在运行的版本。 他在教程中使用的是1.8.24。 如果版本不同,请运行gem update –system 1.8.24进行更新。 然后再次运行bundle并将应用程序推送到heroku。