gem install没有创建lib /

时间:2013-05-20 09:33:29

标签: ruby rubygems gem

安装自定义gem时,我只遇到一个错误:File not found: lib ERROR: While generating documentation

安装继续并说gem installed successfully。但是,当我require 'boxes'得到LoadError: no such file to load -- boxes时,当我查看gem目录时,我注意到已安装的gem中没有lib/文件夹。我不确定这是为什么或如何调试它。有什么指针吗?下面是我的gemspec文件。

# -*- encoding: utf-8 -*-
lib = File.expand_path('../lib', __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require 'boxes/version'

Gem::Specification.new do |gem|
  gem.authors       = ["Name"]
  gem.email         = ["http://somedomain.com"]
  gem.description   = %q{Boxes, a Sass framework}
  gem.summary       = %q{Boxes is a modular Sass-based framework that is heavily configurable, extremely modular and works as a Sass and a CSS Framework}
  gem.homepage      = "http://somedomain.com"

  gem.files         = `git ls-files`.split($\)
  gem.executables   = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
  gem.test_files    = gem.files.grep(%r{^(test|spec|features)/})
  gem.name          = "boxes"
  gem.require_paths = ["lib"]
  gem.version       = Boxes::VERSION
  gem.license       = "MIT"

  gem.add_dependency "sass", [">= 3.2.0"]
  gem.add_development_dependency "rake"
end

我是红宝石的新手,我只是在这里制作我的第一颗宝石,所以请耐心等待。

1 个答案:

答案 0 :(得分:1)

我注意到的一件事是在第1行,你将“lib”定义为“../lib”,尽管在gem.require_paths中“lib”在当前目录中。这是真的吗?

要寻找的另一件事是lib不在.gitignore中,因为您使用git ls-files来定义gem.files

修改

在您的gemfile中注意到您使用的是ruby 1.8.7,请确保在需要宝石之前需要'rubygems'