Maven打包同时引入本地jar包

news2024/11/18 3:49:20

Maven打包同时引入本地jar包

若依分离版作为案例 ,实际测试

方法一(pom文件指定jar包目录进行引入)

1.将需要手动引入的jar包放入ruoyi-admin的resources下,例如:

在这里插入图片描述

2.手动jar依赖则在ruoyi-common模块下的pom.xml中引入

在这里插入图片描述

<dependency>
            <groupId>com.icbc</groupId>
            <artifactId>icbc-api-sdk-cop</artifactId>
            <version>1.0.0</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/../ruoyi-admin/src/main/resources/lib/icbc-api-sdk-cop.jar</systemPath>
        </dependency>

扩展:

${project.basedir}:获取当前项目pom.xml所在的路径,例如上图,引入依赖的位置在ruo-common模块的pom文件中,故jar的获取路径如图上

3.配置好后在入口类所在模块,也就是ruoyi-admin的pom文件中引入springboot提供的maven打包插件(ruoyi-admin默认引入),并配置includeSystemScope参数

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.1.1.RELEASE</version>
                <configuration>
                    <!-- 打包时是否包含scope为system的依赖 -->
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

4.直接clear + package 进行打包 ,完成后 java -jar xxx.jar启动测试

方法二(将jar包安装至本地仓库后使用pom文件直接引入

1.先进入需要引入jar目录下,执行以下命令:

mvn install:install-file -Dfile=icbc-api-sdk-cop.jar -DgroupId=com.icbc -DartifactId=icbc-api-sdk-cop -Dversion=1.0.0 -Dpackaging=jar

执行后。本地仓库可以根据-DgroupId设置的参数值去对应位置查看,只要出现如下图,则说明安装成功

在这里插入图片描述

注意Maven安装命令解释:

  • -Dfilejar:包的位置
  • -DgroupId:pom文件里的groupId
  • -DartifactId:pom文件里的artifactId
  • -Dversion:pom文件里的version
  • -Dpackaging:jar(固定)

注意:任何路径和名称不要有中文和空格,以防出现莫名其妙的错误。

2.pom文件添加依赖,即可成功引入jar包

<dependency>
    <groupId>com.icbc</groupId>
    <artifactId>icbc-api-sdk-cop</artifactId>
    <version>1.0.0</version>
</dependency>

3.直接clear + package 进行打包 ,完成后 java -jar xxx.jar启动测试

参考:

```

3.直接clear + package 进行打包 ,完成后 java -jar xxx.jar启动测试

参考:

MAVEN打包同时引入本地jar包

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

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

相关文章

Sqlite数据库操作(一)—— 命令行操作

目录 1、sqlite 数据库安装 2、数据库常用命令 (1) 创建数据库 (2) 系统命令 (3) sql语句 1、sqlite 数据库安装 在终端输入 sudo apt-get install sqlite3 安装sqlite3&#xff0c;安装完毕以后&#xff0c;在终端输入 sqlite3 &#xff0c;若出现以下内容&#xff0c;…

MySQL数据库学习(5)

一、概念 视图是数据库中常用对象之一&#xff0c;它的内容是数据库部分数据或以聚合等方式重构的数据。 只存放视图的定义&#xff0c;不存放数据。不存储数据&#xff0c;所以视图是一个虚表。 因为数据存在基本表中&#xff0c;基本表的数据发生变化&#xff0c;视图查询的结…

MySQL集群解决方案(1):MySQL数据库的集群方案

1、系统架构存在的问题 在我们的系统架构中&#xff0c;DBserver方面我们只是使用了单节点服务&#xff0c;如果面对大并发&#xff0c;海量数据的存储&#xff0c;显然单节点的系统架构将存在很严重的问题&#xff0c;所以接下来&#xff0c;我们将实现MySQL的集群&#xff0c…

双12有哪些宝藏数码好物值得入手、这份超值数码清单收藏好

作为一年一度的电商大促狂欢日&#xff0c;不知道各位小伙伴儿有没有入手哪些心仪的数码产品呢&#xff1f;如果确实不知道要入啥好&#xff0c;不妨一起来看看我为各位精心准备的这份最值得入手的数码产品清单吧&#xff0c;这份清单的产品最主要突出的是颜值、产品实力还有性…

anaconda使用arcpy库

anaconda使用Arcpy环境1. 查看Arcgis版本2. 创建虚拟环境3. 将anaconda环境放入jupyter中1. 查看Arcgis版本 找到Arcgis安装python路径【电脑需要下载Arcgis】点击python.exe&#xff0c;查看python版本 2. 创建虚拟环境 管理员身份打开Anaconda PowerShell Prompt 查看ana…

安卓玩机搞机技巧综合资源-----“另类更新“偷渡”操作步骤 无需解锁bl 无需内侧用户【十三】

接上篇 安卓玩机搞机技巧综合资源------如何提取手机分区 小米机型代码分享等等 【一】 安卓玩机搞机技巧综合资源------开机英文提示解决dm-verity corruption your device is corrupt. 设备内部报错 AB分区等等【二】 安卓玩机搞机技巧综合资源------EROFS分区格式 小米红…

如何排查CPU 100%的应用

一台机器&#xff0c;CPU100%&#xff0c;如何找到相关服务&#xff0c;如何定位问题代码&#xff0c;今天简单分享下思路。 简要步骤如下&#xff1a; 找到最耗CPU的进程&#xff1b;找到最耗CPU的线程&#xff1b;查看堆栈&#xff0c;定位线程在干嘛&#xff0c;定位对应代码…

linux安装docker教程+mysql安装

一、linux安装docker教程 第一步、关闭SELINUX服务 修改文件后的重启linux&#xff0c;重启命令为&#xff1a;reboot 注意此处虚拟机里修改重启无法启动linux系统成功&#xff0c;处理方法&#xff1a; 1、重启Linux按e进入系统启动项修改参数 2、在linux16的行位添加 seli…

k8s编程operator——(4) kubebuilder controller-runtime

文章目录1、KubeBuilder使用1.1 下载1.2 使用2、controller-runtime参考资料&#xff1a;https://book.kubebuilder.io/k8s编程operator系列&#xff1a; k8s编程operator——(1) client-go基础部分 k8s编程operator——(2) client-go中的informer k8s编程operator——(3) 自定…

【PostgreSQL的wal_buffers】

1、什么是wal buffer? wal buffer是预写日志(wal)缓冲区 2、wal buffer的作用是什么 用于还未写入磁盘的 WAL 数据的共享内存。 每次变更事务提交时候,需要将变更事务日志落盘&#xff0c;在PG中为了提高性能&#xff0c;并非采用实时flush到磁盘,而是在PG中提供XLog Buff…

DFS学习

一、DFS 1、简介 最初听到DFS还以为是深度优先遍历&#xff0c;实际上是分布式文件存储服务(Distributed file system)。 FastDFS是一套分布式文件存储服务&#xff0c;Titans将FastDFS提供的接口进行了封装&#xff0c;屏蔽了一些无需关注的操作细节&#xff0c;让用户可以更…

Java基础:Lambda表达式

1. 函数式编程思想概述 在数学中&#xff0c;函数就是有输入量、输出量的一套计算方案&#xff0c;也就是“拿什么东西做什么事情”。相对而言&#xff0c;面向对象过分强调“必须通过对象的形式来做事情”&#xff0c;而函数式思想则尽量忽略面向对象的复杂语法——强调做什么…

《Fluent Python》笔记 | 函数对象和装饰器

在Python中函数是对象&#xff0c;本质是function类的实例。同样函数对象也是“一等对象”&#xff0c;即满足以下条件&#xff1a; 在运行时创建能赋值给变量或数据结构中的元素能作为参数传给函数能作为函数的返回结果 函数对象的__doc__属性用于生成对象的帮助文本。 接受…

【避坑指南】快准狠!一键采购电子元器件(文末优惠券)

在采购元器件的过程中&#xff0c;经常会出现一些或这或那的情况&#xff0c;比如遇到假货问题、不具备专业知识、工作经验不够丰富、采购型号错误等等&#xff0c;因此采购下单如赌注&#xff0c;每个订单都下得心惊肉跳。 那么有哪些坑是可以避开的&#xff0c;又有什么方法可…

AI大模型加持,生成式搜索来了!

梦晨 发自 凹非寺量子位 | 公众号 QbitAI最近有两件事&#xff0c;让搜索引擎重回聚光灯下。百度发布“文心百中”&#xff0c;用AI大模型技术驱动的产业级搜索系统。构建企业内部搜索引擎的人力成本减少90%以上&#xff0c;同时只需要极低数据。几乎同一时间&#xff0c;OpenA…

算法---DFS和BFS

一 : 什么是DFS和BFS? 转载自 : 什么是DFS和BFS? 简介&#xff1a; 深度优先遍历&#xff08;Depth First Search, 简称 DFS&#xff09; 与广度优先遍历&#xff08;Breath First Search&#xff09;是图论中两种非常重要的算法&#xff0c;生产上广泛用于拓扑排序&#xf…

软考高级信息系统项目管理师如何备考?

从以下两个方面&#xff1a; 1.首先分析一下高项考试的各个科目&#xff1b; 2.如何备考高项&#xff1f; 高项考试有三个科目&#xff1a; 综合知识&#xff0c;案例分析&#xff0c;和论文。 一、综合知识 信息系统项目管理师上午综合知识科目范围广&#xff0c;知识点非…

【差分进化算法】基于适应度-距离-平衡的自适应引导差分进化 (FDB-AGDE) 算法附matlab代码

​✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法…

java工作流开源框架可以提高工作效率吗?

要想回答这个问题&#xff0c;就需要了解什么是java工作流开源框架&#xff0c;以及java工作流开源框架的主要特点是什么。随着大数据时代的拓展发展&#xff0c;低代码开发平台已经在数字化管理时代中深受欢迎&#xff0c;是做好数据管理和提升企业数字化发展步伐的重要工具。…

医疗机构 IT 管理员保护患者数据和隐私的 3 项必做之事

自疫情开始以来&#xff0c;医疗机构的信息存储与管理正面临着巨大的考验。患者的健康史&#xff0c;包括所有治疗、程序、处方、实验室测试和扫描报告&#xff0c;都以电子健康记录 (EHR) 的形式存储。尽管 EHR 更能提高患者病例的准确性&#xff0c;并帮助医生跟踪患者的医疗…