0

我有一个正在制作的宝石,它与 Rails 应用程序位于同一级别。

我正在尝试在 rails 应用程序中使用 gem,但无法使其工作 - 我尝试使用的常量(在 gem 中定义)由于某种原因无法被 rails 应用程序访问。

我在这里做错了什么?我可以采取哪些步骤来开始调试问题的原因?

在 Rails 控制台中,$:.grep /mygem/向我展示["/Users/zabba/mygem/lib"]

目录结构,包含某些文件的内容:

~/mygem/
  lib/
    mygem/
      some_class.rb
        module Mygem
          class SomeClass
          end 
        end
    mygem.rb
      require 'mygem/some_class'

~/railsapp/
    Gemfile:
      gem 'mygem', path: '../mygem', require: 'mygem'
    app/
      models/
        a_model.rb:
          # require 'mygem' cannot find file
          class AModel
            def hello_world
              SomeClass.new # Cannot find constant
              Mygem::SomeClass.new # Cannot find constant
            end
          end
4

1 回答 1

0

您可以创建一个文件夹vendor/gems并在其中复制您的 gem。然后在你的 Gemfile

宝石文件

gem 'mygem', :path => "vendor/gems/mygem-0.0.1"

然后bundle install

于 2013-03-02T23:45:33.523 回答