YUI Compressor JS和CSS壓縮工具使用方式(使用前安裝JDK)

壓縮測試:

選中 test.js, 執行右鍵菜單「Process with &YUICompressor」,會生成 test-min.js.

注意事項:

1. 須要安裝 JDK >= 1.4, 並設置環境變量 JAVA_HOME
2. css 和 js 文件編碼必須是 GB2312, GBK 或 GB18030. 若是要支持 UTF-8, 請在 compressor.cmd 中將 GB18030 替換爲 UTF-8
3. css 文件中含有中文時,若是 css 編碼和頁面編碼不一致,須要手動將中文替換爲\xxxx, 詳細說明請參考 compressor.cmd 中的說明
4. 若是不須要 native2ascii, 能夠只安裝 JRE (須要手動修改下 compressor.cmd)

Ref:

1. Introducing the YUI Compressor: http://www.julienlecomte.net/blog/2007/08/11/
2. YUILibrary: http://yuilibrary.com/projects/yuicompressor/wiki
3. Documentation: http://developer.yahoo.com/yui/compressor/
4. native2ascii.exe: http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/native2ascii.html

如下是配置補充:

使用YUI Compressor壓縮JS和Css

經常使用示例(在cmd中執行)

java -jar D:\yuicompressor-2.4.6\build\yuicompressor-2.4.6.jar --type js --charset UTF-8 D:\my.js -o D:\my-min.js
java -jar D:\yuicompressor-2.4.6\build\yuicompressor-2.4.6.jar --type css --charset UTF-8 D:\my.css -o D:\my-min.css

–type指定要打包的文件類型,可選的有 js和css
–charset 指定字符集
-o 指定輸出的文件名,若是不指定這個參數將會把壓縮後的內容輸出到命令行上
最後的my.js和my.css是要打包的debug版源文件

若是沒有給定charset參數,則字符集默認是系統的,此處指定了UTF-8,更加你的實際須要修改。具體語法和其餘參數參考:http://www.julienlecomte.net/yuicompressor/

使用YUI Compressor和DOS批處理腳本壓縮JavaScript和CSS,加上IIS的GZIP,加起來能獲得85%左右的壓縮率。(其中YUI Compressor的壓縮率大約爲50%)也能夠修改參數得到更多的壓縮率。

---------------------------------------------華麗分割線---------------------------------------

製做批處理工具

三個文件:
批處理文件:yuicompressor.bat
註冊表文件:yuicompressor.reg
壓縮jar包:yuicompressor-2.4.6.jar

文件目錄:D:\server\f2etools\yuicompressor

yuicompressor.bat批處理使用方法:
對整個文件夾右鍵點擊【YUI-Compressor JS/CSS】批量壓縮操做生成-min.css或-min.js,源文件不變,項目平時開發時引用源文件,上線前引用壓縮文件測試正常後再上線。

yuicompressor.bat批處理文件代碼:


php

複製代碼
代碼以下:

cd "%1"
for /f %%a in ('dir /b *-min.js') do call:ProcessDel: %%a
for /f %%a in ('dir /b *-min.css') do call:ProcessDel: %%a
for /f %%a in ('dir /b *.js') do call:ProcessCompress: %%a
for /f %%a in ('dir /b *.css') do call:ProcessCompress: %%a
:ProcessDel
IF NOT [%1]==[] call:DeleteMinFiles: %1
GOTO:EOF
:ProcessCompress
IF NOT [%1]==[] call:CompressFiles: %1
GOTO:EOF
:DeleteMinFiles
IF EXIST "%CD%\%1" del "%CD%\%1"
GOTO:EOF
:CompressFiles
java -jar D:\server\f2etools\yuicompressor\yuicompressor-2.4.6.jar %1 -o %~n1-min%~x1
GOTO:EOF



yuicompressor.reg註冊表功能:選中文件夾後,右鍵,會多一個選項【YUI-Compressor JS/CSS】
yuicompressor.reg註冊表文件代碼:


css

複製代碼
代碼以下:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\Compress JS/CSS Files]
@="YUI-Compressor JS/CSS"
[HKEY_CLASSES_ROOT\Directory\shell\Compress JS/CSS Files\command]
@="D:\\server\\f2etools\\yuicompressor\\yuicompressor.bat %1"



注意事項:請修改兩個文件中的目錄路徑
批處理文件:yuicompressor.bat和註冊表文件:yuicompressor.reg

---------------------------------------------華麗分割線---------------------------------------

打包壓縮pack-all-min.js

文件以下:
批處理文件:pack-js.bat
須要打包的目錄文件:pack-list.txt

pack-js.bat 代碼:


html

複製代碼
代碼以下:

for /f %%i in (packList.txt) do type %%i >> pack-all.js
java -jar D:\server\f2etools\yuicompressor\yuicompressor-2.4.6.jar --type js --charset utf-8 pack-all.js -o pack-all-min.js



pack-list.txt

jquery.ui.datepicker.js
jquery.ui.dialog.js
jquery.ui.draggable.js
jquery.ui.mouse.js

使用方法:
在當前js文件夾裏放入這兩個文件,平時開發用多個源文件,運行pack-js.bat後查看頁面效果,上線前打包成一個壓縮文件,測試無誤後再上線。java

相關文章
相關標籤/搜索