jcv-maven-plugin
簡介
jcv-maven-plugin是一個自動為網頁添加js css的版本號maven插件
-
支持js css的自動壓縮,支持多種方法版本號添加,在使用時對代碼0入侵,不需要在頁面上做任何標記,對開發友好,不需要調整現在代碼.直接引入mvn中配置,會自動對打包的頁面進行處理.
-
該插件自動採集文件的md5值進行文件版本號修訂,在使用文件的md5值用於該文件的版本號,因此該插件不會引發js css緩存全部失效(因此不建議使用時間戳的方式),同時修改的內容又能及時到客户瀏覽器中去,不會在存在緩存的問題.
-
支持清理網頁上的
<!-- -->註釋,讓網頁更乾淨. -
所有的操作都不會修改代碼,只會對打包文件進行修改.文件名md5的方式可以解決有些瀏覽器忽略version標籤.
-
目前該插件以發佈到mvn中央倉庫,可以座標引用使用.
-
添加通用支持,不論php等其他語言也同樣可以使用,使用詳細見
sh/start.sh
項目地址
https://github.com/byzy/jcv-m...
下載地址
https://github.com/byzy/jcv-m...
Quick Start
引入maven依賴
<plugin>
<groupId>com.iqarr.maven.plugin</groupId>
<artifactId>jcv-maven-plugin</artifactId>
<version>0.0.6</version>
<executions>
<execution>
<id>process</id>
<phase>package</phase>
<goals>
<goal>process</goal>
</goals>
</execution>
</executions>
<configuration>
<baseJsDomin>
<param>http://script.iqarr.com</param>
</baseJsDomin>
<baseCssDomin>
<param>http://style.iqarr.com</param>
<param>http://script.iqarr.com</param>
</baseCssDomin>
<!--需要處理文件後綴-->
<suffixs>
<param>html</param>
<param>jsp</param>
</suffixs>
<!--清理頁面註釋-->
<clearPageComment>true</clearPageComment>
<globaJsMethod>MD5_METHOD</globaJsMethod>
<globaCssMethod>MD5_METHOD</globaCssMethod>
<!-- 壓縮js-->
<compressionJs>true</compressionJs>
<!-- 壓縮css-->
<compressionCss>true</compressionCss>
</configuration>
</plugin>
配置war插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory>
<encoding>${build.source.encoding}</encoding>
<!--如果使用md5文件名 就必須排除相應的js css ,**/*.js,**/*.css-->
<!--在使用普通的模式的時候需要配置jsp html -->
<warSourceExcludes>**/*.html,**/*.jsp</warSourceExcludes>
<webResources>
<resource>
<directory>${basedir}/src/main/webapp/js/common</directory>
<includes>
<include>config.js</include>
</includes>
<filtering>true</filtering>
<targetPath>js/common</targetPath>
</resource>
</webResources>
</configuration>
</plugin>
打包
mvn clean package
# 注意該插件不會在eclipse中生效,在package後才會生效
新版本特性
version 0.0.6
-
優化整個壓縮流程.
-
修復部分bug
-
添加通用模塊支持,支持對php等其他語言處理.
-
添加常量名稱支持.
注意事項
-
不支持 ../../xxx.js
-
不支持 ../../xx.css
-
如果啓用js壓縮,那麼在js中變量定義禁止使用js關鍵字
-
html 清除註釋只支持網頁中的
<!-- --> -
插件不會在eclipse中生效,在package後才會生效
-
注意在使用md5文件名的時候請注意排除一些js動態加載css,如果修改了文件名會導致無法加載到css,因此需要排除掉,目前已知有
kindeditor,layer,My97DatePicker -
js css文件編碼必須utf-8