最近使用javascript编写程序,用到javascript压缩工具在网上查找,压缩工具很多。最后选择了
google开源的
转自:
http://www.phpblog.cn/archives/242
http://blog.csdn.net/pipi0714/article/details/6046866
Closure Compiler是一个google出的用来压缩、检查javascript的工具。其项目地址在:http://code.google.com/closure/compiler/
Closure Compiler的使用方法有如下3种:
在命令行下使用一个google编译好的java程序
使用google提供的在线服务
使用google提供的RESTful API
下面我来分别介绍一下这3种方法的具体使用。
1. 在命令行下使用一个google编译好的java程序
这种方法最适合在linux命令行下开发的同学们。首先在 http://closure-compiler.googlecode.com/files/compiler-latest.zip 这里下载编译好的Closure Compiler,下载后,随便解压缩到一个目录,比如解压到当前用户的根目录:
$ unzip compiler-latest.zip -d ~
这时,除了几个说明文件外,还会有一个叫compiler.jar的文件出现,然后,我们就可以直接使用它来压缩,例如:
$ java -jar ~/compiler.jar --js my_source.js --js_output_file my_package.js
这样,就把 my_source.js压缩成my_package.js了。经过我的测试,压缩率较别的压缩工具来说,还是相当高的。
如果想知道其他的可选参数,可以输入如下命令获得:
$ java -jar ~/compiler.jar --help
在压缩过程中,它还会告诉你的js文件中出现的错误,以及不建议使用的语法等,比如说不建议使用with语句,以及不建议使用没有大括号的if/while/for等等。
2. 使用google提供的在线服务
这种方法是最直观也是最容易使用的,但是缺点是麻烦,速度慢,而且不太方便压缩比较大的文件。
使用方法为直接打开浏览器访问 http://closure-compiler.appspot.com/(可能需要FQ) ,然后在里面的文本框中输入你想要压缩的js,然后点Complie按钮即可。
3. 使用google提供的RESTful API
这种方法比较灵活,但缺点也是无法压缩较大的文件(压缩本地文件时)。使用时,同学们可以使用自己擅长的语言,参考google 的 RESTful API文档编写自己的压缩器,API文档见http://code.google.com/closure/compiler/docs/api-tutorial1.html 。原理大概就是将需要压缩的js内容或js文件所在url,以及必要的配置信息发送给google的服务器,然后接收google的响应,响应结果即为压缩后的内容。
同学们可以在这3种方法中自己选择喜欢的方法。但我个人更喜欢使用第一种方法,因为不仅没有文件大小限制,而且速度很快。