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

    • 0. 背景
    • 1. 上传私有仓库
    • 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>
<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>配置解决

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/69391.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基础入门-网站协议身份鉴权OAuth2安全Token令牌JWT值Authirization标头

知识点&#xff1a; 1、网站协议-http/https安全差异&#xff08;抓包&#xff09; 2、身份鉴权-HTTP头&OAuth2&JWT&Token 一、演示案例-网站协议-http&https-安全测试差异性 1、加密方式 HTTP&#xff1a;使用明文传输&#xff0c;数据在传输过程中可以被…

07苍穹外卖之redis缓存商品、购物车(redis案例缓存实现)

课程内容 缓存菜品 缓存套餐 添加购物车 查看购物车 清空购物车 功能实现&#xff1a;缓存商品、购物车 效果图&#xff1a; 1. 缓存菜品 1.1 问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压…

DeepSeek-R1 本地大模型搭建对接API

DeepSeek-R1 在这里将学到很多知识 欢迎使用使用DeepSeek-R1本地大模型DeepSeek 的模型基础说明DeepSeek的本地 API 说明DeepSeek 本地模型搭建1、执行命令安装及测试 DeepSeek-R1 API接口调用当然&#xff0c;我们为了让用户更加便捷&#xff0c;我们把API 接口全部放到上面截…

【0404】Postgres内 实现分配一个新的 Object ID (OID)

文章目录 1. 分配一个新 Object ID (OID)1.1 ShmemVariableCache 中 nextOid1.2 写一个 NEXTOID log record1. 分配一个新 Object ID (OID) Postgres内核中分配一个新的 Oid 是由函数 GetNewObjectId() 实现。该函数声明于 transam.h,实现于 varsup.c 源文件。 对于 GetNewO…

250207-MacOS修改Ollama模型下载及运行的路径

在 macOS 上&#xff0c;Ollama 默认将模型存储在 ~/.ollama/models 目录。如果您希望更改模型的存储路径&#xff0c;可以通过设置环境变量 OLLAMA_MODELS 来实现。具体步骤如下&#xff1a; 选择新的模型存储目录&#xff1a;首先&#xff0c;确定您希望存储模型的目标目录路…

Ubuntu20.4软件应用打不开

安装 snap-store&#xff1a; 确保 Snap 已安装&#xff1a; Snap 是一个包管理系统&#xff0c;需要先确保 snapd 已经安装。如果系统中没有安装&#xff0c;可以通过以下命令来安装 Snap&#xff1a; sudo apt update sudo apt install snapd安装 snap-store&#xff1a; 使…

深入解析:React 事件处理的秘密与高效实践

在 React 中&#xff0c;事件处理是构建交互式应用的核心。本文将带你深入探索 React 事件处理的机制、最佳实践以及如何避免常见陷阱&#xff0c;助你写出更高效、更健壮的代码。 1. React 事件处理的独特之处 合成事件&#xff08;SyntheticEvent&#xff09; React 使用合…

单片机之基本元器件的工作原理

一、二极管 二极管的工作原理 二极管是一种由P型半导体和N型半导体结合形成的PN结器件&#xff0c;具有单向导电性。 1. PN结形成 P型半导体&#xff1a;掺入三价元素&#xff0c;形成空穴作为多数载流子。N型半导体&#xff1a;掺入五价元素&#xff0c;形成自由电子作为多…

CNN 卷积神经网络处理图片任务 | PyTorch 深度学习实战

前一篇文章&#xff0c;学习率调整策略 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started CNN 卷积神经网络 CNN什么是卷积工作原理深度学习的卷积运算提取特征不同特征核的效果比较卷积核感受野共享权重池化 示例源码 …

3.1 学习UVM中的uvm_component类分为几步?

文章目录 前言一、定义1.1 角色和功能&#xff1a;1.2 与其他UVM类的区别&#xff1a;1.3 主要属性和方法&#xff1a; 二、使用方法2.1 定义和实例化&#xff1a;2.2 生命周期管理&#xff1a;2.3 组件间通信&#xff1a; 三、何时使用3.1 使用场景3.2 适用组件3.3 与uvm_obje…

谷云科技RestCloud全面接入DeepSeek 开启智能新时代

在数字化转型的浪潮中&#xff0c;谷云科技始终走在数据集成与智能应用领域的前沿。近期&#xff0c;随着 DeepSeek 的火爆出圈&#xff0c;谷云科技紧跟技术趋势&#xff0c;对旗下两大核心产品 —— 数据集成软件 ETLCloud 和 AI Agent 智能体构建平台进行了重大升级&#xf…

Kafka 入门与实战

一、Kafka 基础 1.1 创建topic kafka-topics.bat --bootstrap-server localhost:9092 --topic test --create 1.2 查看消费者偏移量位置 kafka-consumer-groups.bat --bootstrap-server localhost:9092 --describe --group test 1.3 消息的生产与发送 #生产者 kafka-cons…

FFmpeg 与 FFplay 参数详解:-f、-pix_fmt、-pixel_format 和 -video_size 的区别与用法

FFmpeg 与 FFplay 参数详解:-f、-pix_fmt、-pixel_format 和 -video_size 的区别与用法 在使用 FFmpeg 和 FFplay 进行视频处理和播放时,-f、-pix_fmt、-pixel_format 和 -video_size 是常用的参数。这些参数的作用和使用场景略有不同,理解它们的区别和用法对于正确处理和播…

即时通讯开源项目OpenIM配置离线推送全攻略

如何进行二次开发 如果您需要基于 OpenIM 开发新特性&#xff0c;首先要确定是针对业务侧还是即时通讯核心逻辑。 由于 OpenIM 系统本身已经做好了比较多的抽象&#xff0c;大部分聊天的功能已经具备了&#xff0c;不建议修改 IM 本身。 如果需要增加 IM 的能力&#xff0c;可以…

深度解析:网站快速收录与网站内容更新频率的关系

本文转自&#xff1a;百万收录网 原文链接&#xff1a;https://www.baiwanshoulu.com/97.html 网站快速收录与网站内容更新频率之间存在着密切的关系。以下是对这一关系的深度解析&#xff1a; 一、内容更新频率对网站快速收录的影响 提高收录速度 定期发布新内容会促使搜索…

【个人开发】macbook m1 Lora微调qwen大模型

本项目参考网上各类教程整理而成&#xff0c;为个人学习记录。 项目github源码地址&#xff1a;Lora微调大模型 项目中微调模型为&#xff1a;qwen/Qwen1.5-4B-Chat。 去年新发布的Qwen/Qwen2.5-3B-Instruct同样也适用。 微调步骤 step0: 环境准备 conda create --name fin…

c++计算机教程

目的 做出-*/%计算机 要求 做出可以计算-*/%的计算机 实现 完整代码 #include<bits/stdc.h> int main() {std::cout<<"加 减- 乘* 除/ 取余% \没有了|(因为可以算三位)"<<"\n"<<"提示:每打完一个符号或打完一个数,\…

了解Linux 中 make 与 Makefile

目录 一、为什么开发者需要构建工具&#xff1f; 二、make/Makefile 1. Makefile基本规则 2.清理项目 三、make的工作原理 一、为什么开发者需要构建工具&#xff1f; 在软件开发中&#xff0c;我们经常面临这样的场景&#xff1a;一个项目包含数十个源代码文件&#xff…

RK3568中,使用cmake搭建C++工程进行RGA开发

在 RK3568 平台上使用 C 配合 RGA (Raster Graphics Acceleration) 进行图像加速开发&#xff0c;以下是详细的配置步骤和示例&#xff1a; 1. 环境准备 安装 RK3568 SDK 确保已安装 Rockchip 官方提供的 SDK&#xff08;如 Linux SDK&#xff09;&#xff0c;RGA 头文件和库通…

win11右击显示全部

正常&#xff1a; 输入&#xff1a; reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve 重启或刷新进程 刷新&#xff1a; taskkill /f /im explorer.exe & start explorer.exe 成功&#xff1a;