

普段はLinux環境で作業しているのですが、  
Windows環境にSymfony2環境を構築する必要があります。

WindowsにXAMPPパッケージをインストールして、  
Symfony2フレームワークを設定しました。

システムは問題なく設定・動作しましたが、  
Compassの設定でエラーが出ており、問題の原因がわかっておりません。

**_config.yml:_**

[code]

    # 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"
    
[/code]

**_error message:_**

[code]

    [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.
    
[/code]

"Individual stylesheets must be in the sass directory."の部分のエラーが理解できておりません。  
Compass個別で使用・動作するのは問題ありません。  
Symfony2内での設定方法が理解できていない状態です。  
Compass & Sass のパス設定以外、同じ設定でLinux環境ではCompassも動作しております。

> 環境
[code]

    Windows : 7
    Ruby : 2.1.5
    Sass : 3.4.10
    Compass : 1.0.3
    
[/code]


CC BY-SA 3.0
2015-03-12T01:46:40.533
7812
2015-03-13T05:59:24.997
2015-03-13T05:59:24.997
5444
8704
question
ruby symfony2 sass
Windows環境でのSymfony2でCompassのエラー"Individual stylesheets must be in the sass directory"


下記ファイルを編集する  
kriswallsmith/assetic/src/Assetic/Filter/CompassFilter.php

312行目付近

[code]

    $pb->add('--sass-dir')->add('')->add('--css-dir')->add('');
    
[/code]

to

[code]

    $pb->add('--sass-dir')->add($tempDir)->add('--css-dir')->add($tempDir);
    
[/code]

`yuicompressor-2.4.8.jar` を `yuicompressor-2.4.7.jar` に変更。

[code]

    # 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"
    
[/code]

一応これで動きました。


CC BY-SA 3.0
2015-03-12T03:37:45.817
7817
2015-03-12T03:37:45.817
8704
7812
answer