我正在尝试升级我的应用,这是我在部署应用时遇到的错误:
加载'mysql2'Active Record适配器时出错。缺少依赖的宝石吗?无法激活mysql2(<0.6.0,> = 0.4.4),已激活mysql2-0.3.21确保所有依赖项都已添加到Gemfile。
这是我的Gemfile: https://github.com/BI-CTSICN/sparc-request/blob/master/Gemfile
gem 'mysql2', '~> 0.3.18'
gem 'rails', '~> 5.1', '>= 5.1.4'
我正在使用ruby 2.4.2
答案 0 :(得分:1)
您使用的{'k':{'a','b'}}
版本(CMD
,已签入mysql2
)过旧,需要比0.3.21
更新的版本。
通过更改Gemfile.lock
中的版本并运行0.4.4
来升级mysql2
gem。当然,在那之前,请检查版本之间有什么变化,然后运行测试以检查升级是否没有中断任何事情。
答案 1 :(得分:1)
仅锁定mysql2 gem版本对我不起作用。唯一有效的方法是将rails gem版本与mysql2 gem版本匹配,并按发布日期进行比较。
例如:我现在将我的Rails版本从5.1更新到5.2,所以我想在我的应用程序(最新版本)上放置mysql 0.5.3。但是我只能放0.4.10版本,因为它的发布日期与我现在安装的rails 5.2.0.rc2版本相匹配(两者均来自2018年3月,相差一天)。
我不知道为什么这样工作,但是我想这是我尝试安装的Rails和mysql2版本之间的不兼容问题。