Maven压缩插件YUI Compressor使用介绍

Maven压缩插件YUI Compressor使用介绍简介这篇文章主要介绍了Maven压缩插件YUICompressor使用介绍以及相关的经验技巧,文章约18810字,浏览量165,点赞数5,值得参考!使用这个插件主要有两个作用:减少资源文件体积,提高移动端页面加载速度。对关键的前端代码进行一定的代码混淆,保护知识产权。使用说明:使用YUICompressor压缩JS和CSS。需要Maven2.0及以上工程。默认情…

大家好,又见面了,我是你们的朋友全栈君。

简介 这篇文章主要介绍了Maven压缩插件YUI Compressor使用介绍以及相关的经验技巧,文章约18810字,浏览量165,点赞数5,值得参考!

使用这个插件主要有两个作用:

  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的目录。

转载自:http://www.136.la/jingpin/show-95608.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/161231.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 卡尔曼滤波应用及其matlab实现

    卡尔曼滤波应用及其matlab实现线性卡尔曼滤波卡尔曼滤波在温度测量中的应用X(k)=A*X(k-1)+T*W(k-1)Z(k)=H*X(k)+V(k)房间温度在25摄氏度左右,测量误差为正负0.5摄氏度,方差0.25,R=0.25。Q=0.01,A=1,T=1,H=1。假定快时刻的温度值、测量值为23.9摄氏度,房间真实温度为24摄氏度,温度计在该时刻测量值为24.5摄氏度,偏差为0.4摄氏度。利用k-1…

    2022年6月29日
  • windows搭建php环境_如何安装php环境

    windows搭建php环境_如何安装php环境使用apache+php+mysql的方式一、安装mysql1、下载mysql,下载地址:https://dev.mysql.com/downloads/installer/2、下载完成后解压我解压的路径是:D:\ProgramFiles\mysql-8.0.253、配置文件首先在解压的路径下查看是否含有my.ini的文件,如果没有则新建一个,内容如下:[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=D:\ProgramFiles\

    2022年9月15日
  • python中randint函数是什么意思_randint是什么函数

    python中randint函数是什么意思_randint是什么函数randint(a,b)随机生成整数:[a-b]区间的整数(包含两端)1fromrandomimportrandint2print("随机生成10个随机整数。")

    2022年8月1日
  • @ResponseBody详解

    @ResponseBody详解@ResponseBody的作用其实是将java对象转为json格式的数据。@responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据。注意:在使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式…

    2022年5月28日
  • angularjs下载地址

    angularjs下载地址

    2021年9月15日
  • poe交换机和接入交换机的区别_光纤交换机和普通交换机的区别

    poe交换机和接入交换机的区别_光纤交换机和普通交换机的区别POE交换机与普通交换机区别的话,POE交换机就是除了能提供普通交换机所具有的传输功能,还能给网线的另一端设备提供供电功能。普通的交换机主要是交换数据的功能,并没有具备供电的功能。接下来我们就一起来详细看看POE交换机和普通交换机的区别具体有哪些?POE交换机和普通交换机具有以下几点区别:1.可靠性不同:POE交换机就是支持对网线供电的交换机,和普通交换机相比就是受电终端(比如AP、数字摄像头等)不用再进行电源布线,对整个网络而言可靠性更高。2.功能不同:POE交换机就是除了能提供普通交换机所

    2022年10月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号