gem详解

1. 执行命令,创建一个gem,rand_t就是你gem的名字,命名规范

1
bundle gem rand_t

执行完成之后,会生成如下文件结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
MIT License enabled in config
Code of conduct enabled in config
create rand_t/Gemfile
create rand_t/.gitignore
create rand_t/lib/rand_t.rb
create rand_t/lib/rand_t/version.rb
create rand_t/rand_t.gemspec
create rand_t/Rakefile
create rand_t/README.md
create rand_t/bin/console
create rand_t/bin/setup
create rand_t/LICENSE.txt
create rand_t/CODE_OF_CONDUCT.md
Initializing git repo in /Users/tlt/gems/rand_t

bin路径下的两个文件是可执行文件

  • bin/setup相当于执行bundle install
  • bin/console 会加载rand_t,并进入irb模式,方便调试

lib路径下的文件,是我们的主目录

  • 其中 rand_t.rb 是我们的入口文件,当其他程序 require ‘rand_t’ 的时候,这个文件会被加载。
    入口文件 rand_t.rb 是为了加载 gem的依赖,这些依赖可以是内部的类,也可以是第三方的库。
  • rand_t文件夹下,是我们要实现功能代码的地方