前言
WebJar官網:https://www.webjars.org/,對于任何與Servlet 3兼容的容器,WEB-INF/lib目錄中的webjar都會自動作為靜態資源提供。這是因為WEB-INF/lib中的JAR中的META-INF/resources目錄中的任何內容都會自動公開為靜態資源。
官網上面已經有很多熱門webjar,但有時候還是不能滿足我們的需要,我們需要自己打包WebJar,本文記錄如何WebJar的打包、使用
打包
首先創建一個maven工程,干干凈凈什么都沒有
把一下常用的web資源(比如:jquery、bootstrap前端框架、layer彈出層、jqgrid分頁插件)放在resources文件夾下面,為了更直觀的區分,我們先新建一個plugin文件夾
編寫pom.xml,指定打包方式,以及構建工具
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<? xml version = "1.0" encoding = "UTF-8" ?> < project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion >4.0.0</ modelVersion > <!-- 打包方式 --> < packaging >jar</ packaging > < groupId >cn.huanzi</ groupId > < artifactId >webjar</ artifactId > < version >1.0.1</ version > <!-- 構建工具 --> < build > < resources > < resource > < directory >${project.basedir}/src/main/resources</ directory > < targetPath >META-INF/resources/</ targetPath > </ resource > </ resources > </ build > </ project > |
打開maven工具欄,package打包
打包成功
target目錄下面就會生成jar包
jar包結構是這樣子滴
有了jar包后我們就可以引入jar使用這些web靜態資源了,上傳到maven私服使用maven引入或者直接引入jar文件都行
使用
首先需要引入jar,如果是直接把jar放在項目里面就不多說了直接復制進去就行,如果是要maven引入,則先需要把jar包發到maven私服,在pom中配置私服地址,然后引入
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<!-- 配置私服地址 --> < repositories > < repository > < id >XXXXXXX</ id > < name >XXXXXX</ name > < url >XXXXXX</ url > </ repository > </ repositories > <!-- 引入webjar --> < dependency > < groupId >cn.huanzi</ groupId > < artifactId >webjar</ artifactId > < version >1.0.1</ version > </ dependency > |
使用方式就跟我們使用resources下面的資源一樣,我們看一下thymeleaf引入例子:
<!-- jquery -->
<script th:src="@{/plugin/jquery.min.js}"></script>
總結
使用WebJar有什么好處呢?
1、打成jar包方便管理,統一資源版本,如需升級資源版本,修改webjar工程、升級版本號,重新打包上傳maven私服即可,項目無需做修改
2、減少項目大小,提高打包、部署項目是的效率,例如本例中:
沒打包之前 14.4MB
打包之后 5.62MB,減少8.78MB
如果使用maven引入,則一點空間都不占,項目大小減少14.4MB
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://www.cnblogs.com/csnjava/p/13348092.html