[注意]この記事はあまり調査、精査して確認する時間をとって書いたわけではないので、話半分に読んでいただきたい。
Gemfileとxxx.gemspecの違い
-
ライブラリを管理するために使われるファイルたち
- Gemfile
- Gemfile.lock
- xxx.gemspec
-
これらの違いは、
-
Gemfile
とmy_rubygem.gemspec
は自分で書き換える- Railsの依存ライブラリ管理は
Gemfile
を編集する - gemの依存ライブラリ管理は
my_rubygem.gemspec
を編集する
- Railsの依存ライブラリ管理は
-
Gemfile.lock
は$bundle install
によって書き換えられる
-
gemspecファイルの例
bundle gem my_rubygem
によって作られるファイル群には、これらが含まれる。
my_rubygem/lib/my_rubygem.rb
my_rubygem/lib/my_rubygem/version.rb
my_rubygem/my_rubygem.gemspec
これらのうち、関連する以下の様に書き換える
my_rubygem/lib/my_rubygem/version.rb
module MyRubygem
VERSION = "0.20.0"
end
my_rubygem/gemfile.gemspec
require "my_rubygem/version"
Gem::Specification.new do |spec|
spec.name = "MyRubygem"
spec.version = MyRubygem::VERSION
spec.authors = ["John Lennon"]
spec.email = ["j-lennon@beatle.com"]
.....
end
参考
-
https://qiita.com/nysalor/items/c626e893f6a0d2d3782e
- 自分の記事はこれの劣化版です。