前序:网上很多css与js合并打包工具,其中最流行的就是ant结合yui-compressor,鉴于学习与工作需要今天就学习了一下这种方式,供大家学习交流。

步骤:1、安装jdk,并配置其变量环境;有不懂的同学建议学习http://www.cnblogs.com/nicholas_f/articles/1494073.html,哈哈~~~~

2、下载apache-ant,并配置其变量环境;有不懂的同学建议学习http://book.36ria.com/ant/index.html,呃呃~~~~

3、主要就是xml文件内容,有不懂的同学建议学习http://book.36ria.com/ant/index.html,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project name="concat" default="build">
<property name="module" value="module"/>
<property name="asset" value="asset"/>
<property name="js" value="asset/js"/>
<property name="css" value="asset/css"/>
<property name="charset" value="utf-8"/> <!-- yuicompressor -->
<property file="ant.properties" /> <!-- concat_css_js -->
<target name="concat_css"> <!-- delete repeat -->
<delete>
<fileset dir="${css}" includes="**/*" ></fileset>
<fileset dir="${js}" includes="**/*" ></fileset>
</delete> <echo>concat css js begin</echo>
<concat destfile="${css}/book_detail.css" encoding="${charset}" outputencoding="${charset}" append="false" fixlastline="true">
<path path="module/global/global.css" />
<path path="module/global/btn/_btn.css" />
<path path="module/global/_form.css" />
<path path="module/dialog/_dialog.css" />
<path path="module/dialog/_dialog_login.css" />
<path path="module/header/_header.css" />
<path path="module/global/_announc.css" />
<path path="module/footer/_footer.css" />
<path path="module/book_detail/book_detail.css" />
</concat>
<concat destfile="${js}/book_detail.js" encoding="${charset}" outputencoding="${charset}" append="false" fixlastline="true">
<path path="module/global/global.js" />
<path path="module/book_detail/book_detail.js" />
</concat>
<concat destfile="${css}/order.css" encoding="${charset}" outputencoding="${charset}" append="false" fixlastline="true">
<path path="module/global/global.css" />
<path path="module/global/btn/_btn.css" />
<path path="module/global/_form.css" />
<path path="module/dialog/_dialog.css" />
<path path="module/dialog/_dialog_login.css" />
<path path="module/dialog/_dialog_order_confirm.css" />
<path path="module/header/_mini_header.css" />
<path path="module/footer/_footer.css" />
<path path="module/order/order.css" />
</concat>
<echo>concat css js end</echo>
</target> <!-- minify-css -->
<target name="minify-css">
<apply executable="java" verbose="true" dest="${css}" failonerror="true" parallel="false">
<fileset dir="${css}" includes="**/*.css"/>
<arg line="-jar"/>
<arg path="${compressor}"/>
<arg line="--charset utf-8"/>
<arg value="--type"/>
<arg value="css"/>
<arg value="-o"/>
<targetfile/>
<mapper type="glob" from="*.css" to="*-min.css"/>
</apply> <!-- delete concat -->
<delete>
<fileset dir="${css}" includes="**/*" excludes="**/*-min.css"></fileset>
</delete>
</target> <!-- minify-js -->
<target name="minify-js">
<apply executable="java" verbose="true" dest="${js}" failonerror="true" parallel="false">
<fileset dir="${js}" includes="**/*.js"/>
<arg line="-jar"/>
<arg path="${compressor}"/>
<arg line="--charset utf-8"/>
<arg value="--type"/>
<arg value="js"/>
<arg value="-o"/>
<targetfile/>
<mapper type="glob" from="*.js" to="*-min.js"/>
</apply> <!-- delete concat -->
<delete>
<fileset dir="${js}" includes="**/*" excludes="**/*-min.js"></fileset>
</delete>
</target> <!-- build -->
<target name="build" depends="concat_css,minify-css,minify-js">
<echo>Done!</echo>
</target>
</project>

5、我的文件目录:

说明:(1)asset是合并与压缩后的css和js文件;

(2)module是合并压缩前的css和js文件;

(3)ant.properties是yui-compressor.jar包的引用,也可以直接写到build.xml中;

总结:其实这个是很简单的,我语文不好表达不好啊,有问题欢迎吐槽交流!!!!

jdk、apache-ant结合yuicompressor配置的CSS与JS合并压缩工具的更多相关文章

  1. 压缩网站的css和js,合并多个文件到一个文件

    压缩网站的css和js,合并多个文件到一个文件uglifyjs index.js html5shiv.min.js -o all.min.jsuglifycss index.min.css web.c ...

  2. Apache Ant 简介和配置

    Apache Ant 简介     Apache Ant是目前事实上的Java应用的标准build脚本工具.使它大受欢迎的一个主要愿意是它的和灵活,允许程序员创建自己的Task来对Ant进行扩展.   ...

  3. Ubuntu杂记之——JDK、ANT安装、配置

    一.安装JDK 方法一:使用软件源安装openjdk sudo apt-get install openjdk-7-jdk 方法二:使用软件源安装sun jdk sudo apt-get instal ...

  4. 在OpenResty中使用淘宝的concat进行css和js合并,同时支持GZIP静态压缩

    =======================================================================================cd /usr/local ...

  5. 关于webStrom-11.1配置less且自动生成.css和自动压缩为.min.css/.min.js

    网上看过很多配置思路,自己总结了以下, 就把我个人配置的顺序以及材料分享下,webstrom以下简称WB 1.配置less需要安装nodejs,自行安装.因为要用到npm.我是直接把npm解压到C盘根 ...

  6. CSS 和 JS 文件合并工具

    写 CSS 和 JavaScript 的时候, 我们会遇到一个两难的局面: 要么将代码写在一个大文件, 要么将代码分成多个文件. 前者导致文件难以管理, 代码复用性差, 后者则因为需要在载入多个文件令 ...

  7. vue初始化、数据处理、组件传参、路由传参、全局定义CSS与JS、组件生命周期

    目录 项目初始化 组件数据局部化处理 子组件 父组件 路由逻辑跳转 案例 组件传参 父传子 子组件 父组件 子传父 子组件 父组件 组件的生命周期钩子 路由传参 第一种 配置:router/index ...

  8. 使用gulp进行css、js压缩

    var gulp = require('gulp'); var cleanCSS = require('gulp-clean-css'); var concatCss = require('gulp- ...

  9. 使用Ant和YUICompressor链接合并压缩你的JS和CSS代码

    JS代码和CSS代码在上线前要压缩大家应该都是知道的了.记得之前做项目的时候,最后要交差的时候是找了个网站,将JS代码的文件一个一个地复制,粘贴,复制,粘贴. 当时就在想:TMD有没有好一点的方法,劳 ...

随机推荐

  1. Careercup - Google面试题 - 5634470967246848

    2014-05-06 07:11 题目链接 原题: Find a shortest path ,) to (N,N), assume is destination, use memorization ...

  2. Netsharp产品标识自定义设置:产品名称、版权、LOGO等

    阅读本文请先阅读Netsharp下载及环境搭建 Netsharp本身是一个业务基础平台,Netsharp本身基础上开发的业务产品对客户才有价值,客户看到的产品应该不是Netsharp而是具体的业务产品 ...

  3. 设计模式之建造者模式(Builder)

    建造者模式原理:建造模式主要是用于产生对象的各个组成部分,而抽象工厂模式则用于产生一系列对象,建造者模式而且要求这些对象的组成部分有序. 代码如下: #include <iostream> ...

  4. secure CRT记住密码不可用

    secure CRT 记住密码,琢磨好几天了. 终于发现要在软件打开的时候设置了密码才能让每个会话记住密码. 一直懒得在打开软件的时候设置密码,结果每次打开会话都要输入密码...为了省下输入一次密码, ...

  5. NGUI 笔记

    1.动态加载Atlas,并用NGUITools添加Sprite UIAtlas MyAtlas = Resources.Load("MyAtlas", typeof(UIAtlas ...

  6. bootstrap学习记录(慕课网教程)

    1.当主标题下需要副标题时可在h中嵌套small<h1>nihao<small>a</samll></h1> 2.当某一段落需要突出显示时可添加lead ...

  7. BZOJ 3155: Preprefix sum

    大意:给一个数组,先求出SUM[I],然后动态的求出1-I的SUM[I]的和, 这题得化公式: 树状数组维护两个和:SUM(A[I])(1<=I<=X); SUM(A[I]*(N-I+1) ...

  8. HDOJ1050

    Moving Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  9. “System.Data.Entity.Internal.AppConfig"的类型初始值设定项引发异常。{转}

    <connectionStrings> <add name="ConnectionStringName" providerName="System.Da ...

  10. c# 与flash通信简介

    许久不曾写随笔,即使许久的怠惰,是该抬抬头,看看天了. 公司项目,项目要求是在winForm端先获取下位机的肌电信号采集数据,然后根据这些数据的变化来控制flash游戏,这样一些患者在flash游戏中 ...