maven實現JS+CSS自動壓縮


1. maven實現js+css自動壓縮完整代碼

 1 <?xml version="1.0" encoding="utf-8"?>
 2  
 3  <project xmlns="http://maven.apache.org/POM/4.0.0"
 4      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 5      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 6    <modelVersion>4.0.0</modelVersion>
 7    <!-- 項目所在組、機構 -->
 8    <groupId>com.test</groupId>
 9    <!-- 項目產品名稱 -->
10    <artifactId>test-mobile</artifactId>
11    <!-- 項目產品版本 -->
12    <version>1.0.0</version>
13    <!-- pom屬性配置 -->
14    <properties>
15      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
16    </properties>
17    <!-- 構建相關配置  -->
18    <build>
19      <!-- maven插件配置 -->
20      <plugins>
21        <plugin>
22          <!-- YUI Compressor Maven壓縮插件 -->
23          <groupId>net.alchim31.maven</groupId>
24          <artifactId>yuicompressor-maven-plugin</artifactId>
25          <version>1.3.0</version>
26          <configuration>
27            <!-- 讀取js,css文件采用UTF-8編碼 -->
28            <encoding>UTF-8</encoding>
29            <!-- 不顯示js可能的錯誤 -->
30            <jswarn>false</jswarn>
31            <!-- 若存在已壓縮的文件,會先對比源文件是否有改動。有改動便壓縮,無改動就不壓縮 -->
32            <force>false</force>
33            <!-- 在指定的列號后插入新行 -->
34            <linebreakpos>-1</linebreakpos>
35            <!-- 壓縮之前先執行聚合文件操作 -->
36            <preProcessAggregates>true</preProcessAggregates>
37            <!-- 壓縮后保存文件后綴 -->
38            <suffix>.min</suffix>
39            <!-- 源目錄,即需壓縮的根目錄 -->
40            <sourceDirectory>${basedir}/mobile</sourceDirectory>
41            <!-- 壓縮js和css文件 -->
42            <includes>
43              <include>**/*.js</include>
44              <include>**/*.css</include>
45            </includes>
46            <!-- 以下目錄和文件不會被壓縮 -->
47            <excludes>
48              <exclude>**/*.min.js</exclude>
49              <exclude>**/*.min.css</exclude>
50              <exclude>scripts/data/*.js</exclude>
51            </excludes>
52            <!-- 壓縮后輸出文件目錄 -->
53            <outputDirectory>${basedir}/mobile</outputDirectory>
54            <!-- 聚合文件 -->
55            <aggregations>
56              <aggregation>
57                <!-- 合並每一個文件后插入一新行 -->
58                <insertNewLine>true</insertNewLine>
59                <!-- 需合並文件的根文件夾 -->
60                <inputDir>${basedir}/mobile/scripts</inputDir>
61                <!-- 最終合並的輸出文件 -->
62                <output>${basedir}/mobile/scripts/app/app.js</output>
63                <!-- 把以下js文件合並成一個js文件,是按順序合並的 -->
64                <includes>
65                  <include>app/core.js</include>
66                  <include>app/mlmanager.js</include>
67                  <include>app/tmpl.js</include>
68                  <include>app/ui.js</include>
69                </includes>
70              </aggregation>
71            </aggregations>
72          </configuration>
73        </plugin>
74      </plugins>
75    </build>
76  </project>

2. 執行maven命令

1 mvn yuicompressor:compress

3. 相關鏈接

YUI Compressor官網:http://developer.yahoo.com/yui/compressor/

相關配置參數說明:http://alchim31.free.fr/mvnsites/yuicompressor-maven-plugin/compress-mojo.html

 

本文轉自:http://wang-jia-sina-com.iteye.com/blog/1538000


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM