2011-01-31 28 views
5

En mis rieles 2.3.8 aplicación que se ejecutan en Windows 7, para obtener el siguiente error al intentar iniciar el servidor:No existe el fichero a cargar - active_support/core_ext (LoadError)

D:\app1>ruby script/server 
C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- active_support/core_ext (LoadError) 
     from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require' 
     from D:/app1/vendor/rails/activesupport/lib/active_support.rb:56 
     from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
     from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from D:/app1/vendor/rails/railties/lib/commands/server.rb:1 
     from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
     from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from script/server:3 

En la medida requieren Bloqueo de archivos por debajo de la línea 36 es ... "camino gem_original_require"

def require(path) # :doc: 
    gem_original_require path 
    rescue LoadError => load_error 
    if load_error.message =~ /#{Regexp.escape path}\z/ and 
     spec = Gem.searcher.find(path) then 
     Gem.activate(spec.name, "= #{spec.version}") 
     gem_original_require path 
    else 
     raise load_error 
    end 
    end 

lista joya de la siguiente manera:

actionmailer (2.3.8) 
actionpack (2.3.8) 
activerecord (2.3.8) 
activeresource (2.3.8) 
activesupport (2.3.8) 
builder (3.0.0) 
calendar_date_select (1.16.1) 
cgi_multipart_eof_fix (2.5.0) 
gem_plugin (0.2.3) 
google4r-checkout (1.0.6.1) 
i18n (0.5.0) 
liquid (2.2.2) 
money (3.5.5) 
mongrel (1.1.5 x86-mingw32) 
mysql (2.8.1 x86-mingw32) 
rack (1.1.0) 
rails (2.3.8) 
rake (0.8.7) 
rmagick (2.12.0 mswin32) 

Mirado alrededor con porciones del error, pero no estoy muy seguro de por dónde empezar.

Respuesta

1

crear un nombre de archivo

core_ext.rb

en el

C:\Ruby\lib\ruby\gems\1.8\gems\activesupport-2.3.8\lib\active_support 

añadir y editar el contenido de las siguientes líneas

filenames = Dir["#{File.dirname(__FILE__)}/core_ext/*.rb"].sort.map do |path| 
    File.basename(path, '.rb') 
end 

# deprecated 
filenames -= %w(blank) 

filenames.each { |filename| require "active_support/core_ext/#{filename}" } 
+0

ese directorio ya tiene el mismo archivo con el contenido exacto que proporcionó. gracias por intentarlo. – Jay

5

Solo mirando el rastro de la pila ... parece que su aplicación está en la unidad "D" y los archivos ruby ​​están en la unidad "C".

Tal vez cuando su realización requiere la

filenames = Dir["#{File.dirname(__FILE__)}/core_ext/*.rb"].sort.map do |path| 
    File.basename(path, '.rb') 
end 

su requiriendo ese camino de "D", cuando debería estar en la "C". Esa es mi mejor suposición. Buena suerte.

+0

esto fue hace mucho tiempo y no tengo la máquina en la que se creó el error en +1 para la posible solución ... Estoy seguro de que ayudará a otra persona. – Jay

Cuestiones relacionadas