gem を作ってみた
gem を作ってみた
gem 作成
gem_name
には適当に作りたい gem
名を入力します。
-t
をつけると、テストも作成します。
gem
名に -
を含めると、ディレクトリが階層化されます。
> bundle gem gem_name -t
gem を動かす
./bin/console
を実行すると、irb
で、gem
を動かすことができます。
gem_name.gemspec
変更をしないと、動かないので次に進みます。
$ ./bin/console
Traceback (most recent call last):
30: from ./bin/console:3:in `<main>'
29: from /Users/username/.rbenv/versions/2.6.5/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
...
1: from /Users/username/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/rubygems_integration.rb:58:in `validate'
/Users/username/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/rubygems_integration.rb:63:in `rescue in validate': The gemspec at /Users/username/programming/gem_name/gem_name.gemspec is not valid. Please fix this gemspec. (Gem::InvalidSpecificationException)
The validation error was 'metadata['source_code_uri'] has invalid link: "TODO: Put your gem's public repo URL here."'
gem_name.gemspec の書き換え
gem_name.gemspec
の TODO
と書かれているところを書き換えていきます。
spec.metadata['allowed_push_host']
は、下の記事を参考に example
をコピペしました
Ruby のバージョンを指定します
2.6.5
にします。
> rbenv local 2.6.5
.ruby-version
ファイルが作成されます。
2.6.5
bundle install
$ ./bin/console
Could not find gem 'rake (~> 10.0)' in any of the gem sources listed in your Gemfile.
Run `bundle install` to install missing gems.
bundle install
しましょう。
> bundle install
...
無事、irb
が起動しました。
$ ./bin/console
irb(main):001:0>
以上です。