2013-09-29 15 views
8

Sto tentando di installare geoutm utilizzando gem install geoutm. Il repository Github non ha una pagina dei problemi, quindi sto provando a risolvere il problema e quindi inviare una richiesta di pull. Questo è il problema:Come si esegue il debug del motivo per cui l'installazione di una gemma fallisce?

$ gem install geoutm 
Fetching: geoutm-1.0.1.gem (100%) 
Successfully installed geoutm-1.0.1 
ERROR: While executing gem ... (TypeError) 
    no implicit conversion of Array into String

Dice "installato correttamente", ma sta tentando di richiedere l'errore della gemma. Verbose installazione non è molto più utile:

$ gem install geoutm --verbose 
HEAD https://rubygems.org/latest_specs.4.8.gz 
302 Moved Temporarily 
HEAD https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz 
200 OK 
GET https://rubygems.org/latest_specs.4.8.gz 
302 Moved Temporarily 
GET https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz 
200 OK 
Installing gem geoutm-1.0.1 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/latlon_spec.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/geoutm_spec.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/spec_helper.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/utm_spec.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/testdata.yaml 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/spec.opts 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/spec/ellipsoid_spec.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm/utm_zones.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm/geo_utm_exception.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm/utm.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm/ellipsoid.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm/latlon.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/lib/geoutm.rb 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/LICENCE 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/README.rdoc 
/home/tomas/.rvm/gems/ruby-2.0.0-p247/gems/geoutm-1.0.1/History.txt 
Successfully installed geoutm-1.0.1 
ERROR: While executing gem ... (TypeError) 
    no implicit conversion of Array into String

La gemma funziona perfettamente quando scaricato manualmente e utilizzato senza installazione.

Il problema è che non so come capire dove si verifica l'errore di tipo. Non riesco a trovare alcun registro di installazione o più flag di output dettagliati. Qualche idea su come posso capire questo errore?

+1

provare questo ' gem check geoutm --debug' o 'gem check geoutm --backtrace' –

risposta

4

Utilizzando l'uscita dal

$ gem install --backtrace ... 

voi può inoltre fare

$ byebug /home/tallakt/.rvm/rubies/ruby-2.0.0-p0/bin/gem install geoutm-1.0.1.gem 

All'interno byebyg Tipo:

(byebug) break /home/tallakt/.rvm/gems/ruby-2.0.0-p0/gems/rdoc-4.0.1/lib/rdoc/rubygems_hook.rb:171 
Created breakpoint 1 at /home/tallakt/.rvm/gems/ruby-2.0.0-p0/gems/rdoc-4.0.1/lib/rdoc/rubygems_hook.rb:171 
(byebug) c 

Sto lavorando sulla ricerca del bug in geoutm, ma per ora l'installazione è possibile utilizzando il

$ gem install -N geoutm 

che salta generazione RDoc

+0

Aggiornato in geoutm v 1.0.2 –

4

Grazie al commento di Arup Rakshit ho provato questo comando:

gem install geoutm --debug --backtrace --verbose

E ho avuto un bel backtrace dell'errore:

Exception `TypeError' at /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:407 - no implicit conversion of Array into String 
ERROR: While executing gem ... (TypeError) 
    no implicit conversion of Array into String 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:407:in `exist?' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:407:in `block in check_files' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:406:in `delete_if' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:406:in `check_files' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:480:in `finish' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/options.rb:1037:in `parse' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:162:in `block in generate' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:159:in `chdir' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:159:in `generate' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:54:in `block in generation_hook' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:53:in `each' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/rdoc/rubygems_hook.rb:53:in `generation_hook' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:382:in `call' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:382:in `block (2 levels) in install' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:381:in `each' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:381:in `block in install' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:401:in `in_background' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/dependency_installer.rb:380:in `install' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/commands/install_command.rb:166:in `block in execute' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/commands/install_command.rb:158:in `each' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/commands/install_command.rb:158:in `execute' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/command.rb:305:in `invoke_with_build_args' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/command_manager.rb:170:in `process_args' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/command_manager.rb:130:in `run' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/gem_runner.rb:60:in `run' 
    /home/tomas/.rvm/rubies/ruby-2.0.0-p247/bin/gem:22:in `<main>'
+0

@ArupRakshit: non ne sono sicuro. Non ho usato il comando 'gem check', ho appena provato i flag che hai fornito sul comando install. – Hubro

+0

Si prega di verificare con il comando 'check' anche .. e fammi sapere .. –

+0

@ArupRakshit: ho provato prima, ma non ha segnalato errori. – Hubro

Problemi correlati