2010-03-17 7 views
38

Estoy tratando de rescatar de un `` require ': no ​​hay tal archivo para cargar en ruby` en el orden para indicar al usuario que especifique el distintivo -I en caso de que se haya olvidado de hacerlo. Básicamente, el código es el siguiente:¿Cómo puedo rescatar de un 'requiere': no ​​hay tal archivo para cargar en ruby?

begin 
    require 'someFile.rb' 
rescue 
    puts "someFile.rb was not found, have you" 
    puts "forgotten to specify the -I flag?" 
    exit 
end 

He esperado la parte rescue para hacerse cargo de la ejecución en caso de que no se ha encontrado someFile.rb, pero mi suposición era errónea.

Respuesta

47

Tiene que definir explícitamente el error del que desea rescatar.

begin 
    require 'someFile.rb' 
rescue LoadError 
    puts "someFile.rb was not found, have you" 
    puts "forgotten to specify the -I flag?" 
    exit 
end 
Cuestiones relacionadas