Maven压缩插件YUI Compressor使用介绍
简介 这篇文章主要介绍了Maven压缩插件YUI Compressor使用介绍以及相关的经验技巧,文章约18810字,浏览量165,点赞数5,值得参考!
使用这个插件主要有两个作用:
- 
减少资源文件体积,提高移动端页面加载速度。 
- 
对关键的前端代码进行一定的代码混淆,保护知识产权。 
使用说明:
使用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的目录。 | 
    人生有几个十年呢?点点滴滴,用文字记录

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号