1.    在pom.xml文件中,引入wro4j-maven-plugin插件

  1. <plugin>
  2. <groupId>ro.isdc.wro4j</groupId>
  3. <artifactId>wro4j-maven-plugin</artifactId>
  4. <version>${wro4j.version}</version>
  5. <executions>
  6. <execution>
  7. <id>optimize-web-resources</id>
  8. <phase>compile</phase>
  9. <goals>
  10. <goal>run</goal>
  11. </goals>
  12. </execution>
  13. </executions>
  14. <configuration>
  15. <ignoreMissingResources>false</ignoreMissingResources>
  16. <jsDestinationFolder>
  17. ${project.build.directory}/${project.build.finalName}/static/js
  18. </jsDestinationFolder>
  19. <cssDestinationFolder>
  20. ${project.build.directory}/${project.build.finalName}/static/css
  21. </cssDestinationFolder>
  22. <wroManagerFactory>
  23. ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory
  24. </wroManagerFactory>
  25. </configuration>
  26. </plugin>

2.    配置合并、压缩策略,新建文件/WEB-INF/wro.xml,例如配置内容为:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <groups xmlns="http://www.isdc.ro/wro" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://www.isdc.ro/wro wro.xsd">
  4. <group name="basic">
  5. <css>/static/css/front.css</css>
  6. <js>/static/js/jquery.js</js>
  7. <js>/static/js/jquery.paging.min.js</js>
  8. <js>/static/js/front/global.js</js>
  9. <js>/static/js/front/search.js</js>
  10. </group>
  11. <group name="custom">
  12. <css>/static/css/front.css</css>
  13. <css>/static/css/comment/comment.css</css>
  14. <css>/static/plugins/syntaxhighlighter/shCore.css</css>
  15. <js>/static/js/front/coding.js</js>
  16. </group>
  17. </groups>

3.    配置wro4j相关属性,新建WEB-INF/wro.properties,例如配置内容为:
配置属性含义参见:http://everycoding.com/coding/68.html

  1. cacheUpdatePeriod=0
  2. modelUpdatePeriod=0
  3. debug=true
  4. disableCache=false
  5. gzipResources=true
  6. ignoreMissingResources=false

此插件必须配置wro.properties。否则在执行打包命令:clean package时否则会报如下异常:
src\main\webapp\WEB-INF\wro.properties (系统找不到指定的文件。) -> [Help 1]

4.    执行maven命令:clean package 打包
我们会发现根据wro.xml配置的策略在
${project.build.directory}/${project.build.finalName}/static/js
${project.build.directory}/${project.build.finalName}/static/css的目录下生成了
basic.css、basic.js、custom.css、custom.js等合并压缩后的文件。

Maven插件wro4j-maven-plugin压缩、合并js、css详解的更多相关文章

  1. Grunt的配置及使用(压缩合并js/css)

    Grunt的配置及使用(压缩合并js/css) 安装 前提是你已经安装了nodejs和npm. 你能够在 nodejs.org 下载安装包安装.也能够通过包管理器(比方在 Mac 上用 homebre ...

  2. 前端构建工具 Gulp 压缩合并JS/CSS 并添加版本号、ES6转ES5

    Gulp 基于 Node.js 的前端构建工具,可以实现前端代码的编译(sass.less).压缩合并(JS.CSS).测试:图片的压缩:已经添加 JS 和 CSS 版本号,防止浏览器缓存. 1. 安 ...

  3. 第十一节:Bundles压缩合并js和css及原理分析

    一. 简介 1.背景:浏览器默认一次性请求的网络数是有上限的,如果你得js和css文件太多,就会导致浏览器需要多次加载,影响页面的加载速度, MVC中提供Bundles的方式压缩合并js和css,是M ...

  4. 引用:使用grunt 压缩 合并js、css文件

    引用:https://www.jianshu.com/p/08c7babdec65 压缩 js 文件 1.创建一个目录 名为grunt   目录.png 2.在grunt目录下创建一个 src目录,存 ...

  5. 使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度

    使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度 一些泛WEB 2.0网站为了追求用户体验,可能会大量使用CSS和JS文件.这就导致在服务器带宽一定的情况下,多用户并发访问速度变慢.如何加 ...

  6. Google Pagespeed,自动压缩优化JS/CSS/Image

    Google Pagespeed,自动压缩优化JS/CSS/Image 浏览: 发布日期:// 分类:技术分享 关键字: Nginx Appache Pagespeed 自动压缩优化JS/CSS/Im ...

  7. 自写脚本实现上线前本地批量压缩混淆 js , css 代码。

    最近做项目遇到一个要求,就是把本地的 js 和 css 进行压缩后再上线,由于之前项目并没有使用 webpack 之类的库,项目上也因为一些机密不能在线上压缩,这无疑给代码打包压缩带来了很大麻烦,于是 ...

  8. js对象详解(JavaScript对象深度剖析,深度理解js对象)

    js对象详解(JavaScript对象深度剖析,深度理解js对象) 这算是酝酿很久的一篇文章了. JavaScript作为一个基于对象(没有类的概念)的语言,从入门到精通到放弃一直会被对象这个问题围绕 ...

  9. javascript 中合并排序算法 详解

    javascript 中合并排序算法 详解 我会通过程序的执行过程来给大家合并排序是如何排序的...  合并排序代码如下: <script type="text/javascript& ...

  10. java 流操作对文件的分割和合并的实例详解_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 java 流操作对文件的分割和合并的实例详解 学习文件的输入输出流,自己做一个小的示例,对文件进行分割和合并. 下面是代 ...

随机推荐

  1. node - post - 上传图片

    html代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  2. 1通过URL对象的openStream()方法能够得到指定资源的输入流。

    通过URL读取网页内容     1通过URL对象的openStream()方法能够得到指定资源的输入流.     2通过输入流能够读取.訪问网络上的数据.     案例: import java.io ...

  3. linux 编译中required file `./ltmain.sh' not found 错误的解决办法(转)

    在linux下编译c/c++程序出错:$ automake --add-missing....configure.in:18: required file `build/ltmain.sh' not ...

  4. 【SpringMVC学习11】SpringMVC中的拦截器

    Springmvc的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理.本文主要总结一下springmvc中拦截器是如何定义的,以及测试拦截器的执行情况和使用 ...

  5. oc 经常用到弹出view的方法

    #pragma mark 弹出view -(void)exChangeOut:(UIView *)changeOutView dur:(CFTimeInterval)dur { CAKeyframeA ...

  6. Android 网络状态的监控

    1 http://www.cnblogs.com/qingblog/archive/2012/07/19/2598983.html 2

  7. 关于浮点数的json解析

    近期在工作中遇到个问题 通过post请求从其他系统(好像是C#写的)获得json字符串 {"geometry":{"rings":[[[40426489.331 ...

  8. Eclipse 经常使用快捷键

    一.File 二.Edit Ctrl + 1  有益写错,让编辑器提醒改动 三.Refactor 抽取为全局变量 Refactor - Convert Local Variable to Field ...

  9. 涛哥的Python脚本工具箱之生成带Logo的二维码

    近期须要在二维码上加Logo,网上没有找到好用的,于是自己用python写了一个. 须要安装qrcode,PIL库 二维码简称 QR Code(Quick Response Code),学名为高速响应 ...

  10. wxWidgets之wxGrid控件

    1. 介绍 wxGrid控件时wxWidgets界面库中内置的网格控件. 通经常使用来显示表格数据.该控件拥有强大的功能.开发人员可依据自己的需求对其进行定制. 2. 经常使用API      构造函 ...