2011-08-19 11 views

risposta

0

La nuova versione di Ruby 1.8.7 ha causato questo problema. Ho dovuto retrocedere a uno dal passato.

0

Estrarre la gemma JSON e vedere se le cose funzionano. Se non lo fanno, sono perso. Se funzionano, allora devi capire perché quella gemma non funzionerà con la tua versione di binari e la tua versione di ruby.

Se guardi in Gemfile.lock vedrai una "treeview" di gemme, e quelle nidificate sono quelle che sono state tirate da una dipendenza da quella in cui sono annidate. Vedi se stai usando questa gemma JSON per qualcosa di importante o se può andare.

Ho avuto un problema molto simile quando ho preso il mio binario 3.0.9 e ho provato a distribuirlo su un host che aveva solo 3.0.3 su di esso. Si è scoperto che la gemma json era per qualche versione 3.0.9 di una gemma di rails ... forse ActiveSupport? Non riesco a ricordare quella parte.

Puoi dirci quale versione di binari stai usando?

+0

Apprezzo la risposta rapida. Questa è un'applicazione piuttosto grande e dipendenze multiple stanno usando la gemma json. Stiamo usando anche le barre 3.0.9. – nbucciarelli

9
  1. rvm GemSET vuoto
  2. rvm uso ree @ my-GemSET
  3. gem install bundler
  4. bundle install

Questo ha risolto il problema per me. Deve esserci qualche estensione compilata contro la versione errata di Ruby (nel mio caso). Spero che funzioni per te!

Se non si utilizza RVM, ho trovato questo comando per disinstallare tutte le gemme:

  1. 'lista gemma | cut -d "" -f1 | xargs gemma disinstallare -aIx'
  2. gem install bundler
  3. bundle install
+2

non ha funzionato per me .. –

+0

rvm gemset vuoto ha funzionato per me –

4

tuo GemSET non è compilato per la versione di Ruby che si sta utilizzando. Ho trovato questo ha funzionato per me:

  1. rvm GemSET vuoto
  2. rvm GemSET creare your_gem_set_name
  3. uso rvm [email protected]_gem_set_name --default
  4. bundle install
4

Inoltre si potrebbe voglio provare a utilizzare bundle exec rails s

+0

questo ha funzionato per me grazie! – Max