ruby-on-rails - 在 Heroku 上运行 ruby​​ 1.9.2

标签 ruby-on-rails ruby ruby-on-rails-3 heroku

我正在尝试在 heroku 上创建一个新应用程序,但似乎无论我做什么 heroku 都运行 ruby​​ 1.9.1 而不是 1.9.2

我已经创建了我的应用...

heroku create writings --stack cedar

然后我将我的开发分支推送到 heroku 上的 master 进行测试

git push heroku develop:master

但应用程序运行时出现错误...查看 heroku 日志...这似乎是令人讨厌的错误。

 /app/vendor/bundle/ruby/1.9.1/gems/execjs-1.1.3/lib/execjs/runtimes.rb:43:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

这表明它正在运行 ruby​​ 1.9.1,不是吗?

如果我运行 heroku config 它会显示...

heroku config
DATABASE_URL        => postgres://mxlvaczibv:wMtsU7TrPMQM5n-X5SfX@ec2-50-19-226-179.compute-1.amazonaws.com/mxlvaczibv
GEM_PATH            => vendor/bundle/ruby/1.9.1
LANG                => en_US.UTF-8
PATH                => vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
RACK_ENV            => production
RAILS_ENV           => production
SHARED_DATABASE_URL => postgres://mxlvaczibv:wMtsU7TrPMQM5n-X5SfX@ec2-50-19-226-179.compute-1.amazonaws.com/mxlvaczibv

这不是显示它正在运行 1.9.1 吗?我完全糊涂了......我以为雪松堆栈运行 1.9.2。任何帮助表示赞赏。

谢谢,马克。

最佳答案

它没有显示它正在运行 Ruby 1.9.1。因为标准库在 1.9.1 和 1.9.2 之间变化很小,所以它们都使用相同的路径。您会注意到这不仅仅是在 Heroku 上。

看起来 execjs 期望在系统上安装 JS 运行时。显然 Celadon Cedar 确实有一个(NodeJS),但在 rails 3.1rc5 到来之前它不会工作。在此之前,请按照 this 中的说明进行操作回答。

关于ruby-on-rails - 在 Heroku 上运行 ruby​​ 1.9.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6399479/

相关文章:

ruby-on-rails - Rails 4.0 Devise 3.x 并将自定义列添加到 STI 用户模型

ruby-on-rails - Rails update_attributes 方法是更新数据库中模型的最佳选择吗?

ruby-on-rails - 为什么可枚举方法在某些环境中有效而在其他环境中无效?

ruby - VSCode/Rubocop 提示未配置的警察

ruby-on-rails - 防止 rake migrate 创建外键约束

ruby-on-rails - 如何更新rails中多对多关系中的属性?

css - Rails 样式表未在 heroku 上加载(生产模式)

ruby - 如何删除 Rails 中的所有 Facebook 应用程序请求?

ruby - 如何在二维数组中查找

ruby-on-rails - 在Ruby on Rails中,要扩展String类,代码应该放在哪里?