JAVA 二月 02, 2016

Web Resource Optimizer for Java (wro4j) Demo

文章字数 3.5k 阅读约需 3 mins. 阅读次数

wro4j 代码仓库

wro4j 文档

运行时编译

在 web 项目中配置一个 Filter,页面上需要 css 或 js 资源时,将请求发送至 Filter,Filter 将按照 wro.xml 配置文件中配置的 group 将资源编译后返回。

步骤 1:添加 WroFilter

<filter>
    <filter-name>WebResourceOptimizer</filter-name>
    <filter-class>ro.isdc.wro.http.WroFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>WebResourceOptimizer</filter-name>
    <url-pattern>/wro/*</url-pattern>
</filter-mapping>

步骤 2:web.xml 同路径创建 wro.xml

<groups xmlns="http://www.isdc.ro/wro">
    <group name="all">
        <css>/asset/*.css</css>
        <js>/asset/*.js</js>
    </group>
</groups>

步骤 3:页面引用

<html>
  <head>
    <title>Web Page using wro4j</title>
    <link rel="stylesheet" type="text/css" href="/wro/all.css" />
    <script type="text/javascript" src="/wro/all.js"></script>
  </head>
<body>

</body>
</html>

示例项目:wro4j-demo.war & 源码

预编译

预编译可以将资源文件事先编译好,页面直接引用即可,无需在 web.xml 中配置 Filter。预编译有两种方式,一种是命令行方式,一种是插件方式。

command-line

wro4j-runner 代码仓库

wro4j-runner 文档

根据源码编译的 wro4j-runner-1.7.6.jar

用法示例

假设 jar 包放在 web 应用根路径 src/main/webappwro.xmlsrc/main/webapp/WEB-INF/wro.xml

# 仅合并文件
$ java -jar wro4j-runner-1.7.6.jar --wroFile ./WEB-INF/wro.xml -i
# 合并并压缩
$ java -jar wro4j-runner-1.7.6.jar --wroFile ./WEB-INF/wro.xml -i -m -c cssMin

编译后文件生成至 src/main/webapp/wro/。详细用法参见 文档

plugin

Maven plugin 及使用 Maven plugin 的 Eclipse plugin

0%