[Scala][Lift] JavaScriptの圧縮でエラーが出る
2012年11月8日木曜日
Liftプロジェクトをビルドする時、webappディレクトリ以下においてあるJavaScriptファイルやcssファイルはYui Compresseorを用いて圧縮されます。これが結構厄介で、圧縮済みJavaScriptファイルなんかが入っていると(jQueryとか)圧縮エラーになってビルドが終わりません。勝手に圧縮する必要なんて無いんだけど。
圧縮対象ファイルから取り除く
ビルド通らないと実行も何もできないので、圧縮対象から取り除きます。Yui CompressorのPOMファイルに「excludes」という項目を追加します。
<plugin>
<groupId>net.sf.alchim</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>0.7.1</version>
<executions>
<execution>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>
<configuration>
<nosuffix>true</nosuffix>
<!-- ここから -->
<excludes>
<exclude>**/jquery-1.7.2.min.js</exclude>
</excludes>
<!-- ここまで -->
</configuration>
</plugin>
「excludes」という要素に「exclude」要素を追加し、その中に除外したいJavaScriptファイルやcssファイル名を記述すると、圧縮対象から除外されます。
なぜか圧縮が通らない
本題とは別ですが、普通に書いたプログラムの圧縮が通らないことがあります。その時は、改行コードをチェックしてみてください。手元のYui Compressor(バージョンは0.7.1)では、改行コードは「CR/LF」でなければならないようです(開発環境がMacなので改行コードは「LF」でした)。うまくいかない方は確認してみるといいかもしれません。
0 件のコメント :
コメントを投稿