2013-11-14 3 views
2

я делал рейк активов: PreCompile и нашел эту ошибку:рельсам ошибки прекомпиляции активов, когда меньше рельсы

rake aborted! 
error evaluating function asset-url: method `method_missing' called on terminated object (0x007fe94f714518 flags=0x0 klass=0x0) 
(in /Users/huming/work/strikingly/Bobcat/app/assets/stylesheets/themes/bright/main.less) 
at less.Parser.parser.parse.i (/Users/huming/.rvm/gems/[email protected]/gems/less-2.3.3/lib/less/js/lib/less/parser.js:421:31) 

я использовал менее рельсы-2.3.2; и я также попробовал less-rails-2.4.2, и он тоже не работает. Любая идея, как это происходит?

+0

Я видя То же самое, но, похоже, прерывисто. Вы когда-нибудь это понимали? – DrewB

+0

@DrewB еще нет, все еще глядя в него. –

ответ

0

Это похоже на проблему с тем, как слабые ссылки работают в Ruby 1.9.3, в результате чего их слишком быстро собирают мусор. Затем, пытаясь использовать собранный мусором объект, Ruby, по-видимому, сбой. Я также испытываю это с перерывами.

[S]adly, there is no easy fix due to fundamental defects in the WeakRef implementation on 1.9.3

There may be a more solid workaround, than what the ref gem provides, but I personally don't have the bandwidth to make this a priority given that it works on rubinius and MRI 2.0

https://github.com/cowboyd/therubyracer/issues/176#issuecomment-20147324

Ниже приведен пример этого прорабатывается вокруг в коде явно маркировки что-то не будет мусора, собранные слишком рано:

-  params[i] = sqlite3val2rb(argv[i]); 
+  VALUE param = sqlite3val2rb(argv[i]); 
+  RB_GC_GUARD(param); 
+  params[i] = param; 

https://github.com/sparklemotion/sqlite3-ruby/issues/60

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