Edge Rails: config.gem

14 de abril de 2008  |  Rails 2.1  | 

Também falamos disto no podcast #12. No Rails 2.1 teremos outro problema que dá dor de cabeça nos desenvolvedores resolvido.

Toda vez que você entra em um projeto novo, existe uma sequência inicial que precisa ser seguida, e os dois primeiros passos são: baixar o fonte na sua máquina e instalar todos os gems necessários. Este segundo passo é especialmente chato.

Era chato, porque agora no Rails podemos usar o novo recurso config.gem. No arquivo environment.rb você “deve” adicionar quais gems seu projeto depende, assim:

config.gem "bj"

config.gem "hpricot", :version => '0.6',
                      :source => "http://code.whytheluckystiff.net"

config.gem "aws-s3", :lib => "aws/s3"

Depois sua equipe, ou você mesmo, pode instalar todas as dependências de uma só vez com o comando:

# Instala todos os gems listados
rake gems:install

Também é possível listar quais gems estão sendo usados no projeto executando:

# Lista todos os gems dependentes
rake gems

E se algum dos gems tiver um arquivo rails/init.rb e você quiser levar o gem junto com sua aplicação, rode:

# Copia o gem especifícado para vendor/gems/nome_do_gem-x.x.x
rake gems:unpack GEM=nome_do_gem

E o gem será copiado para o diretório vendor/gems/gem_name-x.x.x.



1 Comentário


  1. Boa noite, gostei muito do seu artigo, porem sou iniciante em Ruby on Rails
    será que você pode me ajudar quanto esse erro:
    faço assim: # rails aplicação
    depois entro na aplicação e: # ruby script/server
    aparece esse erro:
    Missing the Rails 2.1.0 gem. Please `gem install -v=2.1.0 rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.
    Fico grato pela atenção.

Trackbacks

  1. Nome do Jogo » Artigo » Edge Rails: gems:build e gems:unpack
  2. Nome do Jogo » Artigo » Agora é oficial - Ruby on Rails 2.1
  3. Nome do Jogo » Blog Archive » Edge Rails: Fazendo o config.gem não carregar o gem

Deixe um comentário