MultiJson AdapterError Rails 4 Ruby 2 Passenger

use*_*416 4 ruby-on-rails amazon-web-services amazon-elastic-beanstalk

我正在尝试在aws上设置rails(Dev env工作正常).无法让生产正常启动.shell in和db看起来不错.我查看了我的日志文件,我收到以下错误.

rake aborted!
MultiJson::AdapterError: Did not recognize your adapter specification (cannot load such file -- json/ext/parser).
Run Code Online (Sandbox Code Playgroud)

MultiJsonJson安装的宝石,并在gemlock文件.

这在资产编译期间发生.

bet*_*max 5

我不是100%确定问题是什么,但我读到某个地方将multi_json gem降级到版本1.7.8会解决这个问题并且它对我有用.请注意,这正是修复我的应用程序的原因,它可能与您不一样,但希望它是!我做了以下事情:

将以下内容添加到您的Gemfile:

gem 'multi_json', '1.7.8' 
Run Code Online (Sandbox Code Playgroud)

然后更新gem:

bundle update multi_json
Run Code Online (Sandbox Code Playgroud)

提交新的更改:

git add .
git commit -m "Downgrade multi_json gem"
Run Code Online (Sandbox Code Playgroud)

推送到AWS:

git aws.push
Run Code Online (Sandbox Code Playgroud)

那应该解决问题.


如果您收到来自Bundler的关于错误匹配依赖项的投诉,您可以重新安装您的gem,并希望通过删除Gemfile.lock来修复依赖项问题.

要删除Gemfile.lock,请执行以下命令:

rm Gemfile.lock
Run Code Online (Sandbox Code Playgroud)

然后运行bundle install:

bundle install
Run Code Online (Sandbox Code Playgroud)

再次提交并推动到aws.