如何导入第三方sdk | 引入第三方jar 包

    • [0. 背景](#0. 背景)
    • [1. 上传私有仓库](#1. 上传私有仓库)
    • [2. 使用本地文件系统](#2. 使用本地文件系统)

0. 背景

对接一些第三方功能,会拿到第三方的sdk,也就是jar包,如何导入呢

1. 上传私有仓库

  • 最好的方式就是将第三方jar包,上传到私有的仓库,这样直接正常在pom引用即可
  • 如果只是本地开发,可以将本地jar加载到本地mvn仓库,执行如下命令
    • mvn install:install-file -Dfile=./xxx-1.0.0.jar -DgroupId=cn.xxx.xxx -DartifactId=xxx -Dversion=1.0.0 -Dpackaging=jar
    • 即可引入对应groupId、artifactId、version的依赖
    • 如果要部署环境,则不行,但可以使用本地文件系统来处理

2. 使用本地文件系统

  • 在pom的<dependency>中,
    • 使用<scope>system</scope>
      • 表示依赖来自本地文件系统,而非 Maven 仓库
    • systemPath指定本地jar包路径,建议放在项目中,如<systemPath>${project.basedir}/lib/A.jar</systemPath>
xml 复制代码
<dependency>
    <groupId>com.example</groupId>  <!-- 自定义组ID -->
    <artifactId>A</artifactId>      <!-- 自定义构件ID -->
    <version>1.0.0</version>        <!-- 自定义版本号 -->
    <scope>system</scope>           <!-- 指定作用域为 system -->
    <systemPath>${project.basedir}/lib/A.jar</systemPath>  <!-- 指定本地路径 -->
</dependency>

 <!--指定使用maven打包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${springBoot.version}</version>

                <configuration>
                    <mainClass>com.example.MybatisExampleApplication</mainClass>
                    <!--设置为true,以便把本地的system的jar也包括进来-->
                    <includeSystemScope>true</includeSystemScope>
                </configuration>

                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
    </build>
  • groupId、artifactId、version都是自定义的,随便都行
  • 需要注意,system作于的依赖作用域的依赖不会随项目打包,可以通过mvn插件spring-boot-maven-plugin<includeSystemScope>true</includeSystemScope>配置解决
相关推荐
是大强1 天前
下载的jar怎么放到本地仓库
python·pycharm·jar
疯狂成瘾者1 天前
对比JAR 包部署 vs Docker 部署方式
java·docker·jar
user_admin_god2 天前
SSE 流式响应 Chunk 被截断问题的排查与修复
java·人工智能·spring boot·spring·maven·mybatis
小同志002 天前
⽅法注解 @Bean
java·spring·bean·maven
day day day ...2 天前
Maven 项目中导入依赖的各种场景、方法、常见问题及解决办法
java·php·maven
python开发笔记2 天前
Java(4) maven 结合spring 3 种框架设计架构
java·spring·maven
MY_TEUCK2 天前
【Maven基础】Maven从安装配置到依赖管理与生命周期(可复现+避坑+面试)
java·面试·maven
longxibo3 天前
【flowable 7.2.0 二开之三:基于 Flowable 7.2 的审批流系统解压即用】
java·tensorflow·jar
Boop_wu3 天前
[Java EE进阶] 图书管理系统(2)
spring·java-ee·maven·mybatis·状态模式
Boop_wu4 天前
[Java EE 进阶]Mybatis进阶(动态SQL)
java·数据库·maven·mybatis