SpringBoot集成第三方jar的完整指南

原文地址:https://blog.csdn.net/weixin_43826336/article/details/141640152?ops_request_misc=%257B%2522request%255Fid%2522%253A%25227d4118ef2d572ba4428caf83f1d2bb28%2522%252C%2522scm%2522%253A%252220140713.130102334...%2522%257D&request_id=7d4118ef2d572ba4428caf83f1d2bb28&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allbaidu_landing_v2~default-4-141640152-null-null.142v102pc_search_result_base6&utm_term=idea%20%E5%BC%95%E5%85%A5%E5%A4%96%E9%83%A8jar%E5%8C%85&spm=1018.2226.3001.4187

项目因为某些原因, 需要引入 demo 中代码, 但是 demo 使用的是 java 而且没有使用任何框架, 并且还引用第三方 jar,

因此在自己项目 (SpringBoot+Maven) 中集成 demo 时. 整个集成过程中颇为麻烦, 遂将此步骤记录一下, 以防日后需要.

  1. 在项目中创建 jar 存放目录

项目根目录下, 创建 lib 目录, 存放 jar

2. jar 加入项目,idea 中可以正常执行项目。有多种方法可实现

2.1 方法一:add as Library
2.2 方法二:进入 File-> Project Structure-> Libraries -> 点击 + 号 -> 选择 java 选中所选的 jar 包 (多个时一个个添加)
2.2 方法三:进入 File-> Project Structure-> Modules-> 点击 + 号 -> 选择 java 选中所选的 jar 包 (多个时一个个添加)

Maven 中打包第三方 jar 包

虽然可以运行了, 但是在 Maven 打包中遇到了问题,

在 idea 中被添加到了模块中, 但是在打包时就无法引用第三方 jar 包, 如下图所示

说明在 Maven 中, 所引用的第三方 jar 并没有被打进去, 因此需要我们进行二次配置

1. 在 pom 文件中, 添加第三方 jar 的引用
复制代码
<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>cn.comtom</groupId>
                <artifactId>cbs-sdk-java8</artifactId>
                <!--依赖范围-->
                <scope>system</scope>
                <version>4.6.2</version>
                 <!--依赖所在位置-->
                <systemPath>${project.basedir}/lib/cbs-sdk-java8-4.6.2.-release.jar</systemPath>
            </dependency>
        </dependencies>
    </dependencyManagement>


需要注意的是: groupId,artifactId 无需和 jar 包中完全一致, 只需我们自定义即可. 版本我们根据实际情况添加

将添加的第三方 jar 的 Maven 坐标纳入到打包插件中
复制代码
<plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <!--让maven编译的时候能将第三方包编入-->
          <configuration>
              <includeSystemScope>true</includeSystemScope>
          </configuration>
      </plugin>
相关推荐
萧鼎4 分钟前
深度探索 Py2neo:用 Python 玩转图数据库 Neo4j
数据库·python·neo4j
华子w90892585920 分钟前
基于 Python Django 和 Spark 的电力能耗数据分析系统设计与实现7000字论文实现
python·spark·django
Rockson1 小时前
使用Ruby接入实时行情API教程
javascript·python
猴哥源码1 小时前
基于Java+SpringBoot的健身房管理系统
java·spring boot
猴哥源码1 小时前
基于Java+SpringBoot的三国之家网站
java·spring boot
Spirit_NKlaus1 小时前
解决HttpServletRequest无法获取@RequestBody修饰的参数
java·spring boot·spring
不死的精灵2 小时前
【Java21】在spring boot中使用ScopedValue
java·spring boot·后端
Tipriest_2 小时前
Python关键字梳理
python·关键字·keyword
im_AMBER3 小时前
学习日志05 python
python·学习
大虫小呓3 小时前
Python 处理 Excel 数据 pandas 和 openpyxl 哪家强?
python·pandas