Ответ 1
На самом деле это не сложно сделать вручную. Скажем, у вас есть библиотека whatever.rb
, которую вы хотите распространять как драгоценный камень.
- создайте каталог
lib
и поместите копиюwhatever.rb
вlib/whatever.rb
. - создайте файл
whatever.gemspec
и поместите здесь следующее: заполнитеGem::Specification.new do |spec| spec.name = 'the-name-of-your-gem' spec.version ='0.0.1'
# this is important - it specifies which files to include in the gem. spec.files = ["lib/whatever.rb"]
# optional, but useful to your users spec.summary = "A more longwinded description of your gem" spec.author = 'Your Name' spec.email = '[email protected]' spec.homepage = 'http://www.yourpage.com'
# you did document with RDoc, right? spec.has_rdoc = true
# if you have a ruby forge project spec.rubyforge_project = 'your-project-name-on-rubyforge'
# if you have any dependencies on other gems, list them thusly spec.add_dependency('hpricot') spec.add_dependency('log4r', '>= 1.0.5') end - Теперь, чтобы построить драгоценный камень, используйте команду
gem build
:% gem build whatever.gemspec Successfully built RubyGem Name: the-name-of-your-gem Version: 0.0.1 File: the-name-of-your-gem-0.0.1.gem %
- Вы можете протестировать локально, используя
gem install the-name-of-your-gem-0.0.1.gem
Чтобы использовать вашу библиотеку в script, просто выполните следующее:require 'rubygems' # puts gem libraries in the require path require 'whatever' # loads your library
Подробнее о том, какие различные параметры в файле gemspec
, установите Справочник по GemSpec.
Лично я использую rubygems для пакетного запуска исполняемых скриптов, и считаю это очень удобным для этого.