以Jar形式为Web项目提供资源文件

橙三吉。 提交于 2020-03-07 13:15:48

以Jar形式为Web项目提供资源文件 http://www.webjars.org/

Web前端使用了越来越多的JS或CSS如jQuery, Backbone.js 和Twitter Bootstrap等等,平时我们是将这些Web资源拷贝到Java的目录下,这种通过人工方式拷贝可能会产生版本误差,拷贝版本错误,前端页面就无法正确展示。

WebJars是以Jar形式为Web项目提供资源文件,然后借助Maven这些依赖库的管理,保证这些Web资源版本唯一性。
Webjars多应用于基于Spring Boot创建微服务项目,需要打包所有资源为可执行的jar。

 

WebJars是将这些通用的Web前端资源打包成Java的Jar包,然后借助Maven工具对其管理,保证这些Web资源版本唯一性,升级也比较容易。关于webjars资源,有一个专门的网站http://www.webjars.org/,我们可以到这个网站上找到自己需要的资源,在自己的工程中添加入maven依赖,即可直接使用这些资源了

1、使用依赖

      <dependency>
            <groupId>org.webjars</groupId>
            <artifactId>webjars-locator</artifactId>
            <version>0.1</version>
        </dependency>
        <dependency>
            <groupId>org.webjars</groupId>
            <artifactId>bootstrap</artifactId>
            <version>2.1.1</version>
        </dependency>    

 

2、打包

           <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-war-plugin</artifactId>
               <version>2.2</version>
               <configuration>
                   <failOnMissingWebXml>false</failOnMissingWebXml>
               </configuration>
           </plugin>

 

3、应用

a、静态页面

<link rel='stylesheet' href='webjars/bootstrap/2.1.1/css/bootstrap.min.css'>
<script type='text/javascript' src='webjars/jquery/1.8.2/jquery.min.js'></script>
<script type='text/javascript' src='webjars/bootstrap/2.1.1/js/bootstrap.min.js'></script><script type='text/javascript' src='webjars/ajax-form/2.1.3/ajax-form.js'></script>

b.jsp 

<link rel='stylesheet' href='<%= org.webjars.AssetLocator.getWebJarPath("css/bootstrap.min.css") %>'>
<script type='text/javascript' src='<%= org.webjars.AssetLocator.getWebJarPath("jquery.min.js") %>'></script>
<script type='text/javascript' src='<%= org.webjars.AssetLocator.getWebJarPath("js/bootstrap.min.js") %>'></script>
<script type='text/javascript' src='<%= org.webjars.AssetLocator.getWebJarPath("ajax-form.js") %>'></script>

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!