如何编辑gem然后将其硬链接到项目?

时间:2011-09-20 19:06:00

标签: ruby-on-rails ruby rubygems bundler

所以我在/ vendor / bundle中有一个gem需要修复,当我编辑其中一个文件然后运行bundle install时它会正确链接并且一切都很好。但问题是,当我部署我的项目时,对我的gem的编辑会丢失,因为它运行bundle并将gem保存在单独的共享目录中。

似乎解决方法是创建vendor / static_gems目录,并将gem放在那里,并将其链接为:

gem 'ruby-mysql', :path => "vendor/static_gems/ruby-mysql-2.9.3"

但是我收到错误,找不到宝石。我的道路有什么问题吗?或者我放在那里的东西出了什么问题?当我从gems /文件夹中复制这个gem时,所有内容都有一个包含一些.rb文件的lib /目录。

2 个答案:

答案 0 :(得分:0)

很可能你没有在你的项目中部署Gemfile.lock,所以Bundler没有(或更可能)运行一个过时的链接到另一个gem路径。

请务必使用项目的其余部分更新Gemfile.lock,并且您不必担心静态gem路径或类似的东西。

答案 1 :(得分:0)

我认为我有正确的想法,但我没有将整个gem放入static_gem文件夹,只是lib目录。当整个宝石都在那里时它很有效。