好吧,这可能很简单,但是我试图让它发挥作用有点痛苦。
所以我使用了宝石“Toto”,我使用“sudo gem install toto”安装,但我最近发现了一个宝石的叉子,我宁愿在这里使用https://github.com/evaryont/toto。
我尝试使用--source指定gem url,但我想github除了“the list”之外不再支持gems了。然后我尝试下载分叉的源代码并运行“rake build”和“rake install”,它似乎创建了一个很好的gem,但是当我将它插回到gem附带的同一个应用程序中时,它无法加载。
它就像这样死去。
computer:myblog User$ thin start -R config.ru
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- toto (LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
from config.ru:2
from /Library/Ruby/Gems/1.8/gems/rack-1.3.0/lib/rack/builder.rb:51:in `instance_eval'
from /Library/Ruby/Gems/1.8/gems/rack-1.3.0/lib/rack/builder.rb:51:in `initialize'
from config.ru:1:in `new'
from config.ru:1
示例Toto应用程序
git clone git://github.com/cloudhead/dorothy.git myblog
对于像这样构建宝石,我也有点气馁,因为我在Heroku上主持,我想确保我也可以在那里使用这个宝石。我想我可能需要解压缩这个gem并将其提交给我的源代码?
我也尝试在我的Gemfile中使用带有以下内容的bundler,我得到了同样的错误,这是否意味着它只是示例代码和分叉gem中的不兼容?
gem "toto", :git => "git://github.com/evaryont/toto.git"
答案 0 :(得分:0)
您是否在宝石存在的环境中运行? Bundler处理:git
- 通过克隆源并将其存储在捆绑的gem的特殊目录中来安装gems。它实际上并没有安装到您的系统中,除非首先运行bundler,否则它不会运行。
试试这个:
bundle exec thin start -R config.ru