Rails 不使用修改后的 gem 而不是原始的
Rails not using modified gem instead of original
这是我认为需要帮助的简单问题。我正在尝试修改 gem 的方法,以便我可以向它添加另一个参数。为此,我将 gem 的存储库克隆到本地目录并更改了我需要的代码。在我的应用程序的 Gemfile 中,我正在这样做:
gem 'recommendable', path: "/home/aristizabal95/forked_gems/recommendable"
然后运行宁bundle install
。尽管捆绑器说它正在使用我的代码,但当我 运行 测试时,我得到了这个错误:
ArgumentError: wrong number of arguments (given 4, expected 1..3)
from /var/lib/gems/2.3.0/gems/recommendable-2.2.0/lib/recommendable/rater/recommender.rb:21:in `recommended_for'
这表明该应用不是 运行我的 gem 版本,而是原始版本。我不知道为什么它不起作用,也找不到与此相关的任何问题。
提前致谢
编辑:
这就是 Gemfile.lock 的样子
PATH
remote: /home/aristizabal95/forked_gems/recommendable
specs:
recommendable (2.2.1)
activesupport (>= 3.0.0)
hooks (>= 0.2.1)
redis (>= 2.2.0)
GEM
recommendable!
我的猜测是 spring
仍然加载了原始 gem 源中的 gem。
要强制 spring
重新加载 gem(从您的本地源),请执行:
spring stop
在控制台中。然后重新启动您的服务器,您应该使用本地来源的 gem。
这是我认为需要帮助的简单问题。我正在尝试修改 gem 的方法,以便我可以向它添加另一个参数。为此,我将 gem 的存储库克隆到本地目录并更改了我需要的代码。在我的应用程序的 Gemfile 中,我正在这样做:
gem 'recommendable', path: "/home/aristizabal95/forked_gems/recommendable"
然后运行宁bundle install
。尽管捆绑器说它正在使用我的代码,但当我 运行 测试时,我得到了这个错误:
ArgumentError: wrong number of arguments (given 4, expected 1..3)
from /var/lib/gems/2.3.0/gems/recommendable-2.2.0/lib/recommendable/rater/recommender.rb:21:in `recommended_for'
这表明该应用不是 运行我的 gem 版本,而是原始版本。我不知道为什么它不起作用,也找不到与此相关的任何问题。
提前致谢
编辑: 这就是 Gemfile.lock 的样子
PATH
remote: /home/aristizabal95/forked_gems/recommendable
specs:
recommendable (2.2.1)
activesupport (>= 3.0.0)
hooks (>= 0.2.1)
redis (>= 2.2.0)
GEM
recommendable!
我的猜测是 spring
仍然加载了原始 gem 源中的 gem。
要强制 spring
重新加载 gem(从您的本地源),请执行:
spring stop
在控制台中。然后重新启动您的服务器,您应该使用本地来源的 gem。