Как мне установить компас в Symfony2 на Windows?

Я всегда использую ОС Linux, но мне нужно проверить работу под Windows для других. Я установил пакет xampp и фреймворк symfony2.

config.yml:

# Assetic Configuration
assetic:
debug:          "%kernel.debug%"use_controller: false
write_to:       %kernel.root_dir%/../../html/
#bundles:        [ ]
#java: /usr/bin/java
filters:
cssrewrite  : ~
sass        :
bin: "C:\Ruby\bin\sass"compass     :
bin: "C:\Ruby\bin\compass"yui_css:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.8.jar"yui_js:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.8.jar"closure:
jar: "%kernel.root_dir%/Resources/java/compiler.jar"

сообщение об ошибке:

[exception] 500 | Internal Server Error | Assetic\Exception\FilterException
[message] An error occurred while running:
"C:\Ruby\bin\ruby.EXE" "C:\Ruby\bin\compass" "compile" "C:\Users\user\AppData\Local\Temp" "--boring" "--config" "C:\Users\user\AppData\Local\Temp\ass1047.tmp" "--sass-dir" "" "--css-dir" "" "C:/Users/user/AppData/Local/Temp/ass1048.tmp.sass"
Error Output:
Individual stylesheets must be in the sass directory.

Я не мог понять «Отдельные таблицы стилей должны быть в каталоге sass». ошибка.

Как мне установить компас в Symfony2 на windows?

Информация о версии:

  • Windows 7
  • Рубин: 2.1.5
  • Sass: 3.4.10
  • Компас: 1.0.3

3

Решение

Изменить: kriswallsmith / сборщик / src / Assetic / фильтр / CompassFilter.php

около 312 линии

$pb->add('--sass-dir')->add('')->add('--css-dir')->add('');

в

$pb->add('--sass-dir')->add($tempDir)->add('--css-dir')->add($tempDir);

и yuicompressor-2.4.8.jar изменяется на yuicompressor-2.4.7.jar.

# Assetic Configuration
assetic:
debug:          "%kernel.debug%"use_controller: false
write_to:       %kernel.root_dir%/../../html/
#bundles:        [ ]
java: C:\Program Files (x86)\Java\jre1.8.0_31\bin\java.exe
ruby: C:\Ruby\bin\ruby.exe
filters:
cssrewrite  : ~
sass        :
bin: C:\Ruby\bin\sass
compass     :
bin: C:\Ruby\bin\compass
yui_js:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"yui_css:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"
8

Другие решения

Это сработало для меня, когда я выполнял сборку: dump — хотя, когда я открывал сайт в Dev-сервере (Windows), я все еще получал эту ошибку — даже после очистки кэша. Я исправил CompassFilter.php, чтобы сохранить временные файлы. Что приводит к тому, что оба файла были созданы правильно, но не было скомпилированного CSS. Вставка всей команды в оболочку создала CSS. Поэтому единственной причиной, по которой это не работает, должна быть проблема с правами пользователя или переменными среды.

При более внимательном рассмотрении в FilterCompass.php в строке 341 — 345 обнаружен странный патч, устанавливающий каталог HOME для каталога Temp-Dir Windows. Я удалил весь блок

if ($this->homeEnv) {
// it's not really usefull but... https://github.com/chriseppstein/compass/issues/376
$pb->setEnv('HOME', FilesystemUtils::getTemporaryDirectory());
$this->mergeEnv($pb);
}

и все работало нормально.

0

По вопросам рекламы [email protected]