10

Play 2 の新規インストールでの LESS コンパイルは本当に遅いです。直接コンパイルする必要のないファイルに '_' を配置した後でも、LESS 編集後のページの更新が完了するまでに最大 8 秒かかります。これは、1 秒もかからない Codekit を使用したローカル コンパイルと比較されます。

このプロセスをスピードアップするための提案はありますか? これを確認するために、Play に対してバグを報告する価値はありますか?

ファイル サイズの詳細は次のとおりです。 LESS のセットアップは非常にシンプルです。_reset.less (.5k) _desktop.less (13k)、_tablet.less (10k)、_mobile.less (8k)、_sprites.less (25k) ファイル。すべてをまとめた all.less (.3k) ファイル。それでおしまい。結果の css ファイルは 53k です。

4

3 に答える 3

8

この問題に関する小さな調査を書き上げました。ここで見つけることができます。

結論: Sass に切り替えることで、より高速なパフォーマンスが得られます。難しいことではありません。Play-Sass SBT プラグインを使用 し、Bootstrap を使用している場合は、 sass-twitter-bootstrap プロジェクトの SASS Bootstrap ファイルを使用します。

コマンドを使用して LESS ファイルをプリコンパイルするlesscことも別の解決策であり、非常に高速です。

プロジェクトが Bootstrap を使用すると仮定すると、Bootstrap LESS ファイルではなくプリコンパイル済み Bootstrap を使用することも大きなメリットになります。なぜなら、Play LESS コンパイラーは、それらの 1 つが変更されるとすべてのLESS ファイルを再コンパイルし、Bootstrap はかなり大きいからです。しかし、一部の人にとっては、コンパイル済みの Bootstrap を使用するのは不便です...

Play 2.0 の Rhino ベースのオンデマンド LESS コンパイルを使用するのが最も遅いオプションです。実際、豚は遅いです。についての私のコメントは無視してincrementalAssetsCompilationください。文書化されていますが、2.0.x コード ベースにはないようです。

編集(2013 年 5 月 22 日) Jonathan Parsonsは、コマンドを使用して LESS ファイルをコンパイルするplay-lesscプラグインをまとめました。lesscPlay プロジェクトでの LESS のコンパイル時間を劇的に短縮できます。https://github.com/jmparsons/play-lesscを参照してください

于 2012-12-12T22:38:41.717 に答える
2

これにより、コンパイル時間が大幅に短縮されます。

export SBT_OPTS="$SBT_OPTS -Dsbt.jse.engineType=Node"

JavaScript の実行時に Play が Rhino の代わりに Node を使用するようにします。

于 2015-03-23T12:10:08.493 に答える