Spring boot如何引入本地jar包?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring boot如何引入本地jar包?相关的知识,希望对你有一定的参考价值。

参考技术A         在开发过程中有时会用到maven仓库里没有的jar包或者本地的jar包,这时没办法通过pom直接引入,那么该怎么解决呢?一般有两种方法。1,将本地jar包安装在本地maven库 ;2,将本地jar包放入项目目录中。本文主要讲第二种方式,这又分两种情况,一种是打包jar包,第二种是打包war包

先看看jar包的结构,打包后jar包的路径在BOOT-INF\lib目录下,依赖的所有jar包都在此目录中,如下图所示。

首先,在项目目录中resources下创建文件夹jar用来存放本地jar包,如下图所示。

第二、pom文件中加入如下内容,以添加json-lib-2.3-jdk15.jar为例。

  <dependency>           

             <groupId>com.ckfinder</groupId>           

             <artifactId>json-lib</artifactId>         

               <version>2.3</version>          

              <scope>system</scope>          

              <systemPath>$project.basedir/src/main/resources/jar/json-lib-2.3-jdk15.jar</systemPath>       

 </dependency>

注意,groupId,artifactId,version可随便写,这时候在项目中运行是没问题了,但是使用命令mvn clean package打包之后BOOT-INF\lib里面并没有json-lib-2.3-jdk15.jar包,还需要pom文件中做如下配置:

      <plugin>           

             <groupId>org.springframework.boot</groupId>         

               <artifactId>spring-boot-maven-plugin</artifactId>           

                 <configuration>

                          <includeSystemScope>true</includeSystemScope>

                     </configuration>         

   </plugin>

注意粗体部分的配置,之后再使用mvn clean package打包就可以了。

相对与jar包,第三方jar包在war包中的目录如下图所示:

使用mvn clean package命令打包时需要在pom文件加入以下内容

   <plugin>                 

       <groupId>org.apache.maven.plugins</groupId>             

       <artifactId>maven-war-plugin</artifactId>                

        <version>2.4</version>                

                    <configuration>                        

                            <webResources>                       

                                     <resource>                           

                                         <directory>src/main/resources/jar/</directory>                      

                                          <targetPath>WEB-INF/lib/</targetPath>                         

                                           <includes>                               

                                                 <include>**/*.jar</include>                        

                                           </includes>                          

                                      </resource>                   

                             </webResources>              

                  </configuration>            

 </plugin>

以上是关于Spring boot如何引入本地jar包?的主要内容,如果未能解决你的问题,请参考以下文章

spring-boot-maven-plugin 安装本地jar 包

Spring Boot 增加jar包

spring-boot打包,引入外部jar包问题

spring boot打包为war包,引入外部jar包

sping boot 如何将外部引入的jar包打到fat jar里面

Javastruts2改spring boot过程中一些问题及解决办法记录