关于将本地jar包引入到项目中的方法。

1、直接将下载的jar包通过配置引入到项目中(不推荐,比较限制)

        1.1、首先将自己所需要引入的jar包下载

        

        1.2、打开idea,进入到项目中,在自己所需要引入jar包的模块下新建一个lib文件夹,跟src同级。

        

        1.3、将下载好的jar复制到lib目录下。

        

        1.4、将jar包配置到项目中,步骤如下::

                

         

 

 

         此时会发现lib目录下jar包会有变化

        

        1.5、这样,就成功引入了,但这样会不太友好,多人开发的话,每个人都要配置一遍,很不方便。所以建议使用下面这种方法。

2、通过pom,将jar包引入到项目中。

        2.1、一二步还是跟第一种方法的1.2、1.3步不变,将本地jar包放到项目的lib目录下。

        

         2.2、打开该模块的pom.xml文件,

         

         2.3、在里面输入以下配置

        <dependency>
            <groupId>visual.check.sdk</groupId>
            <artifactId>visual.check.sdk</artifactId>
            <version>1.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/visual_check_sdk-1.0-SNAPSHOT.jar</systemPath>
        </dependency>

                  2.3.1、注意

                        groupid:自定义

                        artifactld:自定义

                        version:自定义

                        scope:必须是system

                        systemPath:jar包的路径

    !!!:{ project.basedir} 表示<project> 是 pom.xml 的根节点,project.basedir 就是根节点的下级节点

          2.4、通过这种方式,在开发中不会遇到什么问题,不会存在找不到包的情况。

                   但是,maven project部署一般打包发布,所以打包是需要额外配置的

       3、打包

                配置如下,打包的时候需要做如下配置,需要通过resource标签引入,位置build→resources→resource

                

<build>
   <resources>
    <resource>
      <directory>lib</directory>
      <targetPath>/BOOT-INF/lib/</targetPath>
      <includes>
        <include>**/*.jar</include>
      </includes>
    </resource>
   </resources>
 </build>

directory:指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可
targetPath:打包到的文件夹位置,写上BOOT-INF/lib即可,或者是WEB-INF/lib。【斜杠(/)加不加都行,如果是mac的话写./】
includes:一般都是以jar结尾,就写**/*.jar
 

如果也想打包进去的话,需要在插件里做配置<includeSystemScope>true</includeSystemScope>

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <!-- maven打包时会将外部引入的jar包(比如在根目录下或resource文件下新加外部jar包)打包到项目jar -->
        <includeSystemScope>true</includeSystemScope>
    </configuration>
</plugin>

猜你喜欢

转载自blog.csdn.net/m0_73900214/article/details/131400180