2013-11-20 5 views
1

Я получаю эту ошибку, когда пытаюсь прекомпилировать активы. Я довольно новичок в Rails и занимаюсь конвейером активов, заставляя меня хотеть вытащить мои волосы, LOL. Я получаю эту же ошибку, пытаясь использовать ее с ruby ​​1.9.2-p320 или ruby ​​1.9.3-p448. Использование Rails 3.2.13. Жесткая часть для меня смотрит на вывод ошибки и понимание, где искать ошибку. Я не вижу много объяснений о том, как это сделать. Правильно ли, что ошибка находится в файле-справочнике? Если да, то где это?rake aborted! undefined method `[] 'for nil: NilClass

Here is the rake assets:precompile --trace results: 

    [email protected] MARKs-MacBook-Air:stacy1 mark$ rake assets:precompile --trace 
    ** Invoke assets:precompile (first_time) 
** Execute assets:precompile 
/Users/mark/.rvm/rubies/ruby-1.9.2-p320/bin/ruby /Users/mark/.rvm/gems/[email protected]/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets --trace 
** Invoke assets:precompile:all (first_time) 
** Execute assets:precompile:all 
** Invoke assets:precompile:primary (first_time) 
** Invoke assets:environment (first_time) 
** Execute assets:environment 
** Invoke environment (first_time) 
** Execute environment 
** Invoke tmp:cache:clear (first_time) 
** Execute tmp:cache:clear 
** Execute assets:precompile:primary 
rake aborted! 
undefined method `[]' for nil:NilClass 
    (in /Users/mark/Documents/projects/hosting/stacy1/app/assets/stylesheets/application.css.scss) 
/Users/mark/.rvm/gems/[email protected]/gems/sass-rails-3.2.6/lib/sass/rails/helpers.rb:32:in `resolver' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-rails-3.2.6/lib/sass/rails/helpers.rb:25:in `font_url' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/script/funcall.rb:112:in `_perform' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/script/node.rb:40:in `perform' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:298:in `visit_prop' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:37:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:100:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `block in visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `map' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:109:in `block in visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:121:in `with_environment' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:108:in `visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:37:in `block in visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:356:in `visit_directive' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:37:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:100:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `block in visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `map' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:53:in `visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:109:in `block in visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:121:in `with_environment' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:108:in `visit_children' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:37:in `block in visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:128:in `visit_root' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/base.rb:37:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:100:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/visitors/perform.rb:7:in `visit' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/tree/root_node.rb:20:in `render' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/engine.rb:315:in `_render' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-3.2.12/lib/sass/engine.rb:262:in `render' 
/Users/mark/.rvm/gems/[email protected]/gems/sass-rails-3.2.6/lib/sass/rails/compressor.rb:12:in `compress' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/compressors.rb:74:in `compress' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processing.rb:243:in `block in css_compressor=' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processor.rb:29:in `call' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processor.rb:29:in `evaluate' 
/Users/mark/.rvm/gems/[email protected]/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:193:in `block in evaluate' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:190:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:190:in `evaluate' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/bundled_asset.rb:26:in `initialize' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:252:in `new' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:252:in `build_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:93:in `block in build_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/caching.rb:19:in `cache_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:92:in `build_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:169:in `find_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:60:in `find_asset' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/static_compiler.rb:19:in `block in compile' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:219:in `block in each_logical_path' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:206:in `block (2 levels) in each_file' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:196:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:196:in `each_entry' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:204:in `block in each_file' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:203:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:203:in `each_file' 
/Users/mark/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:217:in `each_logical_path' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/static_compiler.rb:18:in `compile' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:56:in `internal_precompile' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:70:in `block (3 levels) in <top (required)>' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `call' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `block in execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:175:in `block in invoke_with_call_chain' 
/Users/mark/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:161:in `invoke' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:60:in `block (3 levels) in <top (required)>' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `call' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `block in execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:175:in `block in invoke_with_call_chain' 
/Users/mark/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:161:in `invoke' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:149:in `invoke_task' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `block (2 levels) in top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `block in top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:115:in `run_with_threads' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:100:in `top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:78:in `block in run' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:75:in `run' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/bin/rake:33:in `<top (required)>' 
/Users/mark/.rvm/gems/[email protected]/bin/rake:23:in `load' 
/Users/mark/.rvm/gems/[email protected]/bin/rake:23:in `<main>' 
Tasks: TOP => assets:precompile:primary 
rake aborted! 
Command failed with status (1): [/Users/mark/.rvm/rubies/ruby-1.9.2-p...] 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils.rb:55:in `block in create_shell_runner' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils.rb:45:in `call' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils.rb:45:in `sh' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils_ext.rb:37:in `sh' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils.rb:82:in `ruby' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/file_utils_ext.rb:37:in `ruby' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:12:in `ruby_rake_task' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:21:in `invoke_or_reboot_rake_task' 
/Users/mark/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:29:in `block (2 levels) in <top (required)>' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `call' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:236:in `block in execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:231:in `execute' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:175:in `block in invoke_with_call_chain' 
/Users/mark/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/task.rb:161:in `invoke' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:149:in `invoke_task' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `block (2 levels) in top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `each' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:106:in `block in top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:115:in `run_with_threads' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:100:in `top_level' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:78:in `block in run' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/lib/rake/application.rb:75:in `run' 
/Users/mark/.rvm/gems/[email protected]/gems/rake-10.1.0/bin/rake:33:in `<top (required)>' 
/Users/mark/.rvm/gems/[email protected]/bin/rake:23:in `load' 
/Users/mark/.rvm/gems/[email protected]/bin/rake:23:in `<main>' 
/Users/mark/.rvm/gems/[email protected]/bin/ruby_executable_hooks:15:in `eval' 
/Users/mark/.rvm/gems/[email protected]/bin/ruby_executable_hooks:15:in `<main>' 
Tasks: TOP => assets:precompile`enter code here` 

Вот файл application.css.scss:

/* 
*= require_self 
*= require_tree . 
*/ 
+0

один файл из вашего приложения стек - это 'app/assets/stylesheets/application.css.scss'. Можете ли вы опубликовать его. – gotva

+1

где вы ссылаетесь на недопустимую декларацию font_url? – sevenseacat

+0

Извините за мое невежество, но что это значит? Как я могу найти недопустимую декларацию font_url? – Mark

ответ

0

Я решил эту проблему, переместив свое развитие в РВМ, используя рубин 2.0.0 и рельсы 4.0. После этого все сработало. Я медленно добавлял свои файлы в новую конфигурацию и продолжал работать с прекомпилятором, чтобы убедиться, что он работает на каждом шагу. Спасибо за помощь каждого.

+0

Мне нравятся эти проблемы, которые решаются путем изменения вещей, совершенно не связанных с проблемой. – sevenseacat

1

Вы можете использовать имиджевую URL (/path/to/file.png) в .css файле измените его URL (/assets/path/to/file.png)

Смежные вопросы