下载 yuicompressor-2.4.2.zip 资源包,解压后 yuicompressor-2.4.2.jar 在 yuicompressor-2.4.2/build 目录下。
2、创建build-yui.xml 文件
然后创建ant 运行的文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="MyTask" basedir="." default="compress-css">
<property name="src.dir" value="./src"/>
<target name="compress-js">
<apply executable="java" parallel="false" failonerror="true"
dest="${src.dir}/dest"
append="false" force="true">
<fileset
dir="${src.dir}"
includes="js/**.js" />
<arg line="-jar" />
<arg path="yuicompressor-2.4.2.jar" />
<arg line="--charset utf-8" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.js" to="*.js" />
<targetfile />
<arg line="--nomunge" /><!--只压缩去掉空格,不混淆-->
</apply>
</target>
<target name="compress-css">
<apply executable="java" parallel="false" failonerror="true"
dest="${src.dir}/dest"
append="false" force="true">
<fileset
dir="${src.dir}"
includes="css/**.css" />
<arg line="-jar" />
<arg path="yuicompressor-2.4.2.jar" />
<arg line="--charset utf-8" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.css" to="*.css" />
<targetfile />
</apply>
</target>
</project>
3、运行ant
在dos下运行命令:ant -buildfile build-yui.xml 命令。
注:目标目录必须存在,否则会报错。
css代码是不可以加密的,首先css有别于javascript代码,是因为javascript自带有函数可以加密解密(可以百度一下js加密解密原理)。而css只能说压缩一些空格和换行,并不能真的去加密,因为没有解密的函数或者插件,没有解密方法自然也就没有加密这一说。首先JS是客户端(浏览器)运行的语言,和css html一样是明文可见的,js目前只能做到使用eval混淆,百度搜索“JS压缩”第一个应用就可以做到混淆和反混淆。另外还有一种方式,针对某些编译器编程,在此就说编译器吧,比如google的,其实只是一个优化器。这样优化出来的代码阅读性很差,代码冗余量很低,性能也是相对来说比较好的。但是强调一点,js是明文可见的,只能混淆,让阅读新降到最低,如果和密码一样加密传输的,浏览器获得的是密文的话,就无法执行,直接报错啦!