2013-05-10 2 views
1

У меня возникли проблемы с предварительной компиляцией ресурсов Rails, с которой я никогда не сталкивался. При запуске rake assets:precomile в этом приложении я вижу, как каждый актив скомпилируется дважды. Если я завершу production.log, я вижу, что он, по-видимому, выполняет целую команду дважды подряд. Вот модифицированный пример из бревен ...rake assets: предварительно скомпилировать все дважды

Connecting to database specified by database.yml 
Compiled jquery.js (97ms) (pid 56296) 
Compiled jquery.cycle.all.js (2ms) (pid 56296) 
Compiled jquery.numeric.js (0ms) (pid 56296) 
Compiled matchMedia.js (0ms) (pid 56296) 
Compiled fastclick.js (1ms) (pid 56296) 
... etc ... 
Connecting to database specified by database.yml 
Compiled jquery.js (97ms) (pid 56296) 
Compiled jquery.cycle.all.js (2ms) (pid 56296) 
Compiled jquery.numeric.js (0ms) (pid 56296) 
Compiled matchMedia.js (0ms) (pid 56296) 
Compiled fastclick.js (1ms) (pid 56296) 
... etc ... 

Проверка скомпилированных файлов подтверждает, что он собрал все в два раза, так что все в CSS & JS дублируется.

Я использую Rails 3.2.13 и Ruby 2.0.0-p0 (также пробовал с 1.9.3-p392).

У меня никогда не возникало проблем с предварительной компиляцией активов, поэтому, если у кого-нибудь есть идеи о том, почему он демонстрирует это необычное поведение на этот раз, я бы хотел его услышать.

Cheers!

+0

Возможно, вы можете перечислить свой 'config/application.rb'? Какую версию Rails вы используете? Недавно вы обновили установку Rails? – Roemer

+0

Использование Rails 3.2.13. Я обновил его пару раз в разработке приложения, но я проверил «config/application.rb» и все файлы окружения на новый проект Rails 3.2.13, и это не похоже на то, что я ничего не пропускаю , 'config/application.rb' можно увидеть здесь: https://gist.github.com/alistairholt/f4b1123c8c30aa03fe4e (удалены несколько чувствительных вещей). Благодарю. – alistairholt

+0

Строка 35 устанавливает все активы, которые необходимо предварительно скомпилировать. Я предполагаю, что несколько случаев «sites/REMOVED.css» происходят из разных файлов? – Roemer

ответ

2

Чтобы объяснить немного больше о «gotcha» от alistairholt: при запуске rake assets:precompile активы предварительно скомпилированы и размещены в public/assets. Оказывается, это приводит к конфликтам при загрузке веб-приложения в среду разработки, поскольку он обслуживает как файлы с public/assets, так и активы из папки app/assets.

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