2014-09-28 71 views
6

我正在嘗試安裝symfony2來編譯sass文件。個別樣式表必須位於sass目錄

但是每次運行php app/console assetic:dump我碰到下面的錯誤時間:

Individual stylesheets must be in the sass directory. 

這是我main.scss是什麼樣子:

@import "utilities/variables"; 

@import "base/layout"; 
@import "base/footer"; 
@import "base/modules"; 
@import "base/form"; 
@import "base/button"; 
@import "base/plugin-overrides"; 

@import "utilities/loaders"; 

有任何這些文件沒有純CSS ,我試着評論一切,但它一直在拋出錯誤。

我用這渲染了一切:

{% block stylesheets %} 
    {% stylesheets 
     filter='compass' 
     'bundles/mybundle/styles/main.scss' 
    %} 
     <link rel="stylesheet" type="text/css" href="{{ asset_url }}"/> 
    {% endstylesheets %} 
{% endblock %} 

哪些應該拿起文件,並使用過濾器編譯compass

我對assetic配置是這樣的:

assetic: 
    debug:   "%kernel.debug%" 
    use_controller: false 
    bundles:  [ 'MaximCMSBundle' ] 
    #java: /usr/bin/java 
    filters: 
     cssrewrite: ~ 
     sass: ~ 
     compass: ~ 

而且我已經在參數中定義了指南針和sass的正確路徑:

ruby.path: 'C:\Ruby200-x64\bin' 
assetic.filter.sass.bin: 'C:\Ruby200-x64\bin\sass' 
assetic.filter.compass.bin: 'C:\Ruby200-x64\bin\compass' 
assetic.filter.compass.images_dir: '%kernel.root_dir%/../web/images' 
assetic.filter.compass.http_path: /images 

我運行了以下版本:

SASS:3.4.5

指南針:1.0.1

當我回滾的版本如下:

SASS:3.2.19

指南針:0.12.7

一切工作正常,但我想使用最新版本。

+0

同樣在這裏...你解決這個問題了嗎? – Christian 2014-12-18 03:45:19

+0

我正在使用較舊的SASS和Compass版本,自那時以來我還沒有測試過 – 2014-12-18 11:54:20

回答

5

的assetic過濾器需要一個行變化和指南針/薩斯

編輯 「供應商/ kriswallsmith/assetic/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); 

即固定它 爲了我。

+0

供應商文件在作曲家更新期間被覆蓋 – thedjaney 2015-09-15 15:52:57

+0

添加到此問題:https://github.com/kriswallsmith/assetic/issues/697 – fritzmg 2015-09-25 10:58:16

0

試圖Indivision開發的解決方案和其他人,我在網絡上看到後,我通過清除緩存解決了這個問題:

php app/console cache:clear -e prod 
相關問題