openlayers从开发环境到生产环境
原文出处:http://www.blogjava.net/siriusfx/archive/2013/03/07/327853.html
Openlayers项目开发完成后,需要将系统从开发环境转移到生产环境。
开发环境下,Openlayers框架由上百个独立的javascript程序文件组成,通过lib目录中的Openlayers.js
动态加载,便于各个功能模块的开发调试。
Openlayers是一个非常庞大的Web地图客户端应用框架,提供了很多功能模块,通常在开发过程中不会用到全部模块。
将系统中用到的独立javascript程序库组织成一个Openlayers.js文件,可以减少代码冗余,加快加载速度,
同时也便于对代码进行压缩和重编码,在一定程度上保护软件产品。
Openlayers提供了代码组合和压缩工具,在build目录下,使用Python脚本实现。运行该工具,需要安装Python解释器。
build文件夹中提供了三种预设的配置文件,它们是:
full.cfg 组合全部代码
library.cfg 组合主要代码
lite.cfg 组合最小代码
项目配置文件建议使用library.cfg或lite.cfg为模板编写。
配置文件中定义了四种作用不同的标签:
[first] 最前执行的代码文件
[last] 最后执行的代码文件
[include] 在预设配置中加入的代码文件列表
[exclude] 从预设配置中去除的代码文件列表
修改[include]和[exclude]项,生成项目配置文件。
在命令提示符下,输入python build.py mycfg my.js(如果是windows系统,请将python.exe加入系统Path路径)
生成的my.js就是生产版本的Openlayers库文件,将my.js部署到生产环境,测试各项功能是否运行正常。
build过程对代码文件做了压缩处理,压缩率在40%左右,程序结构没有做任何改动。
如果你想保护自己的代码,建议使用其他工具进行二次处理,这里推荐Google的Jscompiler,Google的很多项目都使用该工具进行代码压缩和优化。
Google Jscompiler的使用方法:
从http://code.google.com/intl/zh-CN/closure/compiler/下载最新版本。
Google Jscompiler采用Java编写,需要安装Java 6.0运行时或开发包,如果没有安装请到Oracle网站下载。
解压下载的zip包,生成compiler-latest目录,其中compiler.jar是主程序,帮助包含在README中。
执行Google Jscompiler请新打开一个命令提示符窗口,输入:
java -jar compiler.jar --help 显示所有可选参数说明。
压缩编码单个javascript程序文件,请使用下面的命令:
java -jar compiler.jar --js=in.js --js_output_file=out.js
压缩合并多个javascript程序文件,请使用下面的命令:
java -jar compiler.jar --js=in1.js --js=in2.js ... --js_output_file=out.js
经过Google Jscompiler处理后的Openlayers库文件可以再减少20-30%的大小,生成的文件经过测试没有任何问题。
Google Jscompiler会自动对代码进行分析,自动筛选出逻辑上不可能到达的代码,给出提示。
Google Jscompiler会对代码逻辑流程重新组合和优化,提高浏览器上的执行效率。
经过Google Jscompiler重新编码后,Web客户端的运行速度有明显提升。