嗨,伙计们,有时我工作一个 gem,有时为了开发这个 gem,我需要一个 Rails 应用程序。实际上,当我这样做时,我在vendor/plugins/my_gem/目录中创建了我的 gem,并且我在这个目录中完成了所有工作。
可能还有其他方法可以做到这一点,更清洁(这样的插件在 rails 4.0 中不起作用)。
嗨,伙计们,有时我工作一个 gem,有时为了开发这个 gem,我需要一个 Rails 应用程序。实际上,当我这样做时,我在vendor/plugins/my_gem/目录中创建了我的 gem,并且我在这个目录中完成了所有工作。
可能还有其他方法可以做到这一点,更清洁(这样的插件在 rails 4.0 中不起作用)。
我通常工作的每个自定义 gem 都有一个单独的、版本控制的项目。我通常使用 Bundler 创建 gem,尽管还有其他选项。我将 rake 指定为my_gem.gemspec
. 在 gem 中编写完代码和规范后,我通常会为其分配一个新版本,然后运行:
# cd/to/my_gem
bundle exec rake build # build a gem
ruby -S gem install ./pkg/my_gem-0.0.1.gem # install it locally
# cd/to/app_using_gem/
gem unpack my_gem -v 0.0.1 --target ./vendor/gems # vendorize gem
我认为这种方式比修改代码更干净vendor/plugins/my_gem/