rubygems是一个ruby包管理工具。
rubygems通过在ruby的$LOADPATH的目录中添加rubygems.rb文件,并在这个目录中添加了rubytems要用的模块与文件,在1.9之前的版本,要引用一个gem包,需要先require 'rubygems', require 'gemname ..'(或gem 'gem_name ..')。
require 'rubygems'
gem 'gem_name ..'
如果目标电脑上没有安装rubygems,那么上面的代码会报错抛出LoadError异常,可以捕获这个异常,执行代码。
一个gem包包含一组文件,通常代码放在lib目录中,通常约定lib目录中包含一个和项目同名的rb文件。
可执行文件放在bin目录
test目录放置单元测试文件
需要一个Rdoc格式的Readme文件放置在根目录
需要一个和项目同名的gemspec文件
require 'rubygems' SPEC = Gem::Specification.new do |s| s.name = "BysxiangLog" s.version = "0.0.1" s.author = "bysxiang" s.email = "bysxrokr@qq.com" s.homepage = "http://www.bysxiang.com" s.platform = Gem::Platform::RUBY s.summary = "BysxiangLog!" s.description = "边缘随想在线日记" s.require_path = "lib" #s.test_file = "test/ts_bysxiang.rb" s.has_rdoc = true s.extra_rdoc_files = ["README"] s.files = ["lib/bysxianglog.rb"] end
name, version, author, email是这个gem包的一些基本信息,s.platform指定平台,files指定包括的文件,
调用gem build gemname.gemspec来生成gem包。
调用gem install gemname.gem来安装gem包。
调用gem push gemname.gem来发布gem,输入账号、密码即可。