我正在按照教程创建 ruby gems http://guides.rubygems.org/make-your-own-gem/ 该教程告诉我要创建一个这样的ruby文件: % cat lib/hola.rbclass Hola def self.hi puts "Hello world!" endend 然后像这样的gemspec文件:
该教程告诉我要创建一个这样的ruby文件:
% cat lib/hola.rb class Hola def self.hi puts "Hello world!" end end
然后像这样的gemspec文件:
% cat hola.gemspec Gem::Specification.new do |s| s.name = 'hola' s.version = '0.0.0' s.date = '2010-04-28' s.summary = "Hola!" s.description = "A simple hello world gem" s.authors = ["Nick Quaranto"] s.email = 'nick@quaran.to' s.files = ["lib/hola.rb"] s.homepage = 'http://rubygems.org/gems/hola' end
当我在gem中构建hola.gemspec时,我收到此错误:
Invalid gemspec in [hola.gemspec]: hola.gemspec:1: syntax error, unexpected tIDENTIFIER, expecting $end % cat hola.gemspec ^ ERROR: Error loading gemspec. Aborting.
现在他在Github上的代码不会在没有Rakefile的情况下构建.
那我怎么能做这个呢?我是否需要添加Rakefile或代码有问题?
您的错误表明您的文件字面上包含%cat hola.gemspec行.示例中的这一行不是文件本身的一部分;这是作者用来打印文件内容的Unix命令.从另一个文件中删除该行和类似的行,您应该可以转到下一步.