# Versione delle gemme, problemi con require

**URL:** <https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760>\
**Category:** IT\
**Created:** [September 13, 2011, 10:20am UTC](https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760 "2011-09-13T10:20:15Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![dubstep](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/cdc98d/32.png) [@dubstep](https://www.ruby-forum.com/u/dubstep)\
**Post date:** [September 13, 2011, 10:20am UTC](https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760/1 "2011-09-13T10:20:15Z")

</div>

salve,  
all’interno di uno script ruby ho la seguente intestazione:

##################

# load the required library

require ‘rubygems’  
require ‘dbf’  
require ‘active\_record’  
require ‘yaml’  
##################

All’esecuzione mi compare:

can’t activate activesupport (= 3.0.0, runtime) for  
[“activerecord-3.0.0”], already activated activesupport-3.0.6 for  
[“dbf-1.5.3”]

Ho già avuto questo tipo di problema e avevo risolto “giocando” con le  
versioni delle gemme. Preferirei però avere una risposta più sicura:  
avete qualche suggerimento?

In allegato parte del mio gem list se può aiutare.

---

<div class="post-metadata">

**Author:** ![michx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/73ab20/32.png) [@michx](https://www.ruby-forum.com/u/michx)\
**Post date:** [September 13, 2011, 10:30am UTC](https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760/2 "2011-09-13T10:30:33Z")

</div>

potresti _congelare_ le gemme che ti servono usando Bundler. quando il  
setup  
pronto, chiami lo script con:

bundle exec tuoscript

Il 13/09/2011 10:20, Mattia xxx ha scritto:

---

<div class="post-metadata">

**Author:** ![michx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/73ab20/32.png) [@michx](https://www.ruby-forum.com/u/michx)\
**Post date:** [September 13, 2011, 10:34am UTC](https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760/3 "2011-09-13T10:34:15Z")

</div>

Il 13 settembre 2011 10:20, Mattia xxx [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) ha  
scritto:

> All’esecuzione mi compare:
> 
> can’t activate activesupport (= 3.0.0, runtime) for  
> [“activerecord-3.0.0”], already activated activesupport-3.0.6 for  
> [“dbf-1.5.3”]
> 
> Ho gi avuto questo tipo di problema e avevo risolto “giocando” con le  
> versioni delle gemme. Preferirei per avere una risposta pi sicura:  
> avete qualche suggerimento?

Ciao,  
la risposta : bundler! [http://gembundler.com/](http://gembundler.com/)

Scrivi il tuo Gemfile:

source “[http://rubygems.org](http://rubygems.org)”  
gem ‘dbf’  
gem ‘active\_record’, ‘3.0.0’  
gem ‘yaml’

Esegui “bundle”, che risolve le dipendenze e fissa le versioni giuste.

Poi, nel tuo script, scrivi:  
require “rubygems”  
require “bundler/setup”  
require ‘active\_record’  
…

Cos hai la certezza di caricare sempre le versioni che vuoi, senza  
mai pi problemi di conflitti tra versioni.

pietro

E sai con certezza

---

<div class="post-metadata">

**Author:** ![michx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/73ab20/32.png) [@michx](https://www.ruby-forum.com/u/michx)\
**Post date:** [September 13, 2011, 4:10pm UTC](https://www.ruby-forum.com/t/versione-delle-gemme-problemi-con-require/211760/4 "2011-09-13T16:10:38Z")

</div>

Grazie delle risposte, ho risolto il mio problema. Ho aggiornato una  
delle gemme (dbf), e fissato TUTTE le versioni con bundler. Trattandosi  
di un progetto “vecchio” aveva bisogno di un po’ di refactoring. 🙂  
saluti
