2017-05-24 3 views
0

Ich habe eine Symfony/Assetic Installation auf Windows 10, zusammen mit Node.js mit Uglifycss 0.0.27. Ich habe die Versionsnummer von der Kommandozeile ohne Problem bekommen.Symfony und Assetic; NodeJS UglifyCSS gibt einen Syntaxfehler

Das folgende ist meine Konfiguration in Symfony für Assetic;

assetic: 
    debug:   '%kernel.debug%' 
    use_controller: false 
    filters: 
     cssrewrite: ~ 
     uglifycss: 
      bin: C:\Users\User\AppData\Roaming\npm\uglifycss 

Und das Folgende ist der Filter in meiner Twig Vorlage für meine CSS-Dateien eingestellt;

{% stylesheets 'bundles/app/css/*' filter='cssrewrite, uglifycss' output='css/compiled/main.css' %} 
     <link rel="stylesheet" href="{{ asset_url }}" /> 
    {% endstylesheets %} 

Wenn ich PHP-bin/Konsole assetic laufen: dump, erhalte ich die folgenden Fehler

[Assetic\Exception\FilterException] 
    An error occurred while running: 
    "C:\Program Files\nodejs\\node.EXE" "C:\Users\User\AppData\Roaming\npm\uglifycss" "C:\Users\User\AppData\Local\Temp 
    \ass6151.tmp" 
    Error Output: 
    C:\Users\User\AppData\Roaming\npm\uglifycss:2 
    basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 
      ^^^^^^^ 
    SyntaxError: missing) after argument list 
     at createScript (vm.js:56:10) 
     at Object.runInThisContext (vm.js:97:10) 
     at Module._compile (module.js:542:28) 
     at Object.Module._extensions..js (module.js:579:10) 
     at Module.load (module.js:487:32) 
     at tryModuleLoad (module.js:446:12) 
     at Function.Module._load (module.js:438:3) 
     at Module.runMain (module.js:604:10) 
     at run (bootstrap_node.js:390:7) 
     at startup (bootstrap_node.js:150:9) 
    Input: 
    .blue{ 
     background-color: orange; 
    } 

Als Referenz ist hier, dass der Ordner, in dem Assetic Ordner festgelegt enthält;

Node Files

Antwort

0

Eigentlich sollte die uglifycss Datei verweisen auf node_modules \ uglifycss \ uglifycss. Aus irgendeinem Grund scheint dies jedoch nicht unter Windows zu funktionieren. Also ging ich in der Konfiguration direkt darauf und jetzt scheint es richtig zu funktionieren.

#!/bin/sh 
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 

case `uname` in 
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;; 
esac 

if [ -x "$basedir/node" ]; then 
    "$basedir/node" "$basedir/node_modules/uglifycss/uglifycss" "[email protected]" 
    ret=$? 
else 
    node "$basedir/node_modules/uglifycss/uglifycss" "[email protected]" 
    ret=$? 
fi 
exit $ret 
Verwandte Themen