1

このガイドを使用して、symfony プロジェクトに yui_compressor を追加しました。ただし、縮小されたファイルは作成されません。以下は私が適用した設定です。よく見て、何が問題なのか教えてください。設定ファイル

// Added this to the config.yml file in app/config (and yes, I'm on a mac)  
    yui_css:
        jar: "%kernel.root_dir%/Resources/filter/java/yuicompressor-2.4.7.jar"
        java: /usr/bin/java

ベース小枝

// Added this to the :base.html.twig in app/Resources/views

    {% stylesheets  filter='yui_css' output='public/css/compiled-main.css'
        'public/css/main.css'
    %}

ビルド中のyui_compressor zip ファイル内のファイルを、symfony プロジェクトの app/Resources/filter/java フォルダーに追加しました

4

1 に答える 1

8

1 - yuicompressor をダウンロードしてプロジェクトに追加します

解凍して build/ dir に移動し、yuicompressor-2.4.7.jar を展開して app/Resources/java/ project dir に配置します。(さらに、yui ファイルの名前を yuicompressor.jar に変更できます)

2 - 製品環境の yui 圧縮を有効にします

これは、config_prod.yml ファイルに yui コンプレッサーを追加するのが論理的であり、すべての環境に対してではありません (config.yml から行を削除する必要があります)。

config_prod.yml に次の行を追加します。

assetic:
    debug: false
    filters:
        yui_js:
            jar: "%kernel.root_dir%/Resources/java/yuicompressor.jar"
            apply_to: "\.js"
        yui_css:
            jar: "%kernel.root_dir%/Resources/java/yuicompressor.jar"
            apply_to: "\.css"

3 - コントローラ ファイルを生成することを確認します

web/app.php に移動し、prod / false (デバッグなしの場合は false) を設定します。

$kernel = new AppKernel('prod', false);

4 - キャッシュをクリアする

CSS と JS を (更新後に) 再構築したい場合は、prod のキャッシュをクリアすることを忘れないでください。そうしないと、変更が yui コンプレッサーによって無視されます。

php app/console cache:clear --env=prod --no-debug

5 - 圧縮でフィクスチャを再生成します

最後に、ファイルを生成して圧縮できます。

php app/console assetic:dump --env=prod --no-debug -v

-v は、圧縮プロセスの詳細を表示することに注意してください。yui コンプレッサーで問題を引き起こすエラーがあるかどうかを確認できます。

たとえば、JS コメント タグ「/!」yui コンプレッサーで問題が発生するため、すべての名前を「/!」に変更する必要があります。JS ファイルの「/*」の場合。

それだけです^^

于 2013-04-09T10:38:12.063 に答える