Maven压缩插件YUI Compressor使用介绍
Posted 飞快物联
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven压缩插件YUI Compressor使用介绍相关的知识,希望对你有一定的参考价值。
使用这个插件主要有两个作用:
1. 减少资源文件体积,提高移动端页面加载速度。
2. 对关键的前端代码进行一定的代码混淆,保护知识产权。
使用说明:
使用YUI Compressor压缩JS和CSS。
需要Maven2.0及以上工程。
默认情况绑定到构建生命周期:process-resources。
配置说明:
请在pom.xml文件填上配置项
依赖配置:
<dependencies>
<dependency>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.5.1</version>
</dependency>
</dependencies>
构建配置:
<build>
<plugins>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.5.1</version>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>compress</goal>
</goals>
</execution>
</executions>
<configuration>
<encoding>UTF-8</encoding>
<jswarn>false</jswarn>
<nosuffix>true</nosuffix>
<linebreakpos>-1</linebreakpos>
<sourceDirectory>${project.build.directory}/classes/h5 </sourceDirectory>
<outputDirectory>${project.build.directory}/classes/h5</outputDirectory>
<includes>
<include>**/js/*.js</include>
<include>**/css/*.css</include>
</includes>
<excludes>
<exclude>**/js/*min.js</exclude>
<exclude>**/css/*min.css</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
其中标红项为自定义项,请大家结合自己的情况
参数说明
名称 |
类型 |
描述 |
aggregations |
Aggregation[] |
处理后要执行的聚合/连接列表,例如创建包含多个小js文件的大js文件。 聚合可以在任何类型的文件(js,css,...)上完成。 |
disableOptimizations |
boolean |
[js only]禁用所有微优化。默认值:false |
encoding |
String |
读取文件使用的编码。默认值:UTF-8 |
excludes |
List |
附加排除列表。 |
failOnWarning |
boolean |
定义插件是否必须在警告上停止/失败。默认值:false |
force |
boolean |
强制压缩每个文件,否则如果压缩文件已存在并且比源文件新,则不执行任何操作。默认值:false |
gzip |
boolean |
请求创建yui 压缩/ 聚合文件的gzip压缩版本。默认值:false |
jswarn |
boolean |
[js only]显示代码中可能存在的错误。默认值:true |
linebreakpos |
int |
在指定的列号后面的输出中插入换行符,-1表示压缩成1行。默认值:0。 |
nomunge |
boolean |
[js only]仅缩小,不要混淆。默认值:false(压缩并混淆) |
nosuffix |
boolean |
不给压缩文件添加后缀,参考suffix参数,如min。默认值:false(添加后缀) |
outputDirectory |
File |
要将资源复制到的输出目录。 |
preserveAllSemiColons |
boolean |
[js only]保留不必要的分号。默认值:false(不保留) |
resources |
List |
我们要传输的资源列表。 |
skip |
boolean |
是否跳过执行。默认值:false |
sourceDirectory |
File |
javascript源目录(结果将被放到outputDirectory)。 允许项目具有“src/main/js”结构。 |
statistics |
boolean |
显示统计数据(压缩率)。默认值:true |
suffix |
String |
输出文件名后缀。默认值:-min |
warSourceDirectory |
File |
要包含在WAR中的额外文件的单个目录。 |
webappDirectory |
File |
构建webapp的目录。 |
以上是关于Maven压缩插件YUI Compressor使用介绍的主要内容,如果未能解决你的问题,请参考以下文章
JS代码压缩使用YUI Compressor对js文件进行压缩处理
在线压缩图片(TinyPNG)/ JS/CSS/HTML(YUI Compressor)
使用 maven、spring、freemarker 等帮助设置 YUI Compressor 以适应不同的环境(测试/开发/生产)