转载请注明来源:http://www.javashuo.com/article/p-ewmhebmg-w.htmlhtml
咱们能够在rubygems.org中下载安装他人建立的gem。如今,咱们尝试一下本身建立一个gem,而后发布,供他人使用。api
这里开始建立一个zhola的gem,主要做用是输出Hello world。首先建立一个以下tree的文件夹:
建立完成以后,在zhola.rb中填写以下代码:ruby
class Zhola def self.hi puts "Hello world!" end end
而后设置一下gemspec文件:curl
Gem::Specification.new do |s| s.name = 'zhola' s.version = '0.0.1' s.date = '2018-09-28' s.summary = 'Zhanggui first gem' s.description = '第一次建立gem文件' s.authors = ["Zhanggui"] s.email = 'scottzg@126.com' s.files = ["lib/zhola.rb"] s.homepage = 'http://rubygems.org/gems/zhola' s.license = 'MIT' end
这里的homepage为即将发布到的page。
而后在当前文件夹下执行build命令:测试
gem build zhola.gemspec
执行成功的结果为:ui
Successfully built RubyGem Name: zhola Version: 0.0.1 File: zhola-0.0.1.gem
执行成功以后,便会在文件夹中建立zhola-0.0.1.gem文件。此时gem制做成功。url
在刚刚建立的gem文件目录下执行命令:code
gem install ./zhola-0.0.1.gem
输出的结果为:htm
Successfully installed zhola-0.0.1 Parsing documentation for zhola-0.0.1 Done installing documentation for zhola after 0 seconds 1 gem installed
经过上述命令将刚才建立的gem安装到本机。blog
打开终端,而后使用irb命令进行测试:
zhola irb --simple-prompt --noecho >> require "zhola" >> Zhola.hi Hello world! >>
当终端输出Hello world!,说明已经能够正常使用刚才建立的gem。
首先,须要注册一个帐号,直接在https://rubygems.org/ 注册便可,而后打开终端,在终端输入:
curl -u ***** https://rubygems.org/api/v1/api_key.yaml # ***** 为你的用户名
紧接着输入密码,回车以后便会获得一个api_key。
接着在gem文件夹中输入下面的指令:
gem push zhola-0.0.1.gem # push后面为生成的gem名称
push成功以后终端显示:
Pushing gem to https://rubygems.org... Successfully registered gem: zhola (0.0.1)
此时说明已经发布到rubygems成功,其余人直接使用:
gem install zhola
便可使用刚才发布的gem。 该gem的homepage为:https://rubygems.org/gems/zhola 。
至此,咱们就已经发布了一个gem到rubygems。若是以为上面的这种方式比较麻烦,须要建立文件夹、建立gemspec等等,也能够直接使用bundle进行建立。这个后面有时间在介绍。