天天看點

YUI Compressor Maven Plugin介紹

目前開發Web應用Javascript發揮的作用越來越大,相關的Javascript架構也比較多。但是有一個問題,我們開發過程中,所有的JS代碼 都添加了注釋,如使用JsDoc,代碼的可讀性比較強,同時這樣的代碼也便于調試。但是在産品環境中,我們希望這些JS代碼是壓縮和混淆過的,這主要是讓 JS代碼加載的更快,這也是Google AJAX Libraries API出現的原因。YUI Compressor是一款非常強大JS混淆和壓縮工具,目前很多Javascript Framework都使用YUI Compressor進行代碼分發。在Java Web應用開發中,Maven是常用的項目管理工具,是以這裡講述一下如何結合Maven和YUI Compressor實作我們上述的需求。

要實作上述的功能,我們需要使用YUI Comprssor Maven Plugin,通過該plugin,可以實作對JS的壓縮。首先我們要求YUI Compressor在 process-resources 期間發生作用,我們要添加以下代碼:

<plugin>
<groupId>net.sf.alchim</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>        
</plugin>
      

對于Develop和Test環境,我們希望YUI Compressor不工作,主要是調試友善,是以我們還需要添加一個production的profile,然後将上述的代碼加入到 production profile中即可,隻要啟動production profile,YUI Compressor就會工作。

YUI Compressor不僅可以壓縮JS,CSS檔案同樣适用,是以YUI Compressor絕對對你的Web應用釋出有很好的作用,結合Maven這個優秀的項目管理工具,将讓這個過程根據簡單。

參考文檔:

YUI Compressor: http://developer.yahoo.com/yui/compressor/

YUI Compressor Maven Plugin: http://alchim.sourceforge.net/yuicompressor-maven-plugin/

繼續閱讀