Maven工程如何使用非Maven仓库jar包
liuian 2025-01-07 14:15 62 浏览
使用Maven之前,一直都是自己手工在网上搜索需要的jar包,然后添加到工程中。以这样的方式开发,工作了好多年,曾经以为以后也会一直这样下去。
直到碰上Maven,用了第一次,就抛弃老方法了。Maven自带的中央仓库真方便,只要在pom.xml文件中加上依赖,就能把所需的相关jar全部下载下来。自从使用了Maven,再也没有用过老式方法。
1、碰到问题
不过昨天碰到问题了,这个问题在非Maven开发方式下根本不是问题,在Maven开发方式下反而束手无策。
情况是这样的:有家合作公司给我们提供了一个jar文件形式的SDK包,我想加入到现有的Maven工程,先是IDEA编辑环境报错,编辑环境问题解决了编译又通不过了,编译问题解决了运行又找不到所需类。
折腾了大半天,虽然解决了问题,但是方法非常复杂。问题解决后,我想到一个简便的解决方案,它虽然只是小技巧,但很多人用得上,因此把使用步骤写下来共享给大家。
2、生成一个工具jar包
这里生成一个hello.jar文件,该文件中只有一个Hello类,类的内容如下:
package com.hello;
public class Hello {
public static void sayHello(){
System.out.println("Hello, everyone. I am sdk method.");
}
}3、建立一个SpringBoot模块
这里用IDEA建立一个SpringBoot模块product,该模块只生成一个简单的类:
package com.flying.product;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ProductApplication {
public static void main(String[] args) {
SpringApplication.run(ProductApplication.class, args);
}
}现在我们要使用hello.jar中的Hello类。
4、安装hello.jar到本地仓库
在hello.jar文件所在目录,执行下面的命令,完成安装的任务:
mvn install:install-file -DgroupId=com.noname -DartifactId=hello -Dversion=8.8.8 -Dpackaging=jar -Dfile=hello.jar
这条命令,要安装的包为hello.jar,我们假定该包的groupId是com.noname,artifactId是hello,版本是8.8.8。当然,这些输入的信息上是随意的,只要不和既有软件库冲突即可。这是执行的情况:
5、在product模块中添加hello.jar的依赖
修改pom.xml文件,添加下面的内容:
<dependency>
<groupId>com.noname</groupId>
<artifactId>hello</artifactId>
<version>8.8.8</version>
</dependency>6、调用Hello类
修改ProductApplication类,添加对Hello类的使用,修改后的代码如下:
package com.flying.product;
import com.hello.Hello;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class ProductApplication {
public static void main(String[] args) {
SpringApplication.run(ProductApplication.class, args);
Hello.sayHello();
}
}7、运行程序
在IDEA环境下运行程序,这是运行情况:
可以发现,我们使用hello.jar包和我们使用那些广为使用的Maven库没什么不同。
除了直接运行,我们对product模块打包生成可执行包也是可以的,前面很多讲都有详细介绍,这里就不再赘述了。
相关推荐
- 126官方邮箱登录入囗(126邮箱登录入口手机版官网)
-
126邮箱是网易的一个免费邮箱登录入口在浏览器输入:mail.126.com浏览器进入126邮箱网站之后,即可自行登录126邮箱账号。如何在手机上登录126邮箱1、打开手机,找到并打开网易邮箱软件。2...
- 耐用笔记本电脑排行(最耐用笔记本排名)
-
最耐用的笔记本电脑是联想牌子。联想绝对是最耐用的,质量最好的轻薄本,也是最好用的轻薄本之一。联想笔记本电脑的质量和做工在世界上能称第一。十大公认最耐用笔记本如下1、华硕灵耀x14第12代英特尔酷睿i...
- 固态硬盘量产工具下载(固态硬盘量产工具下载合集)
-
固态硬盘量产工具好用的依次是:SLC颗粒最好,MLC颗粒其次,TLC颗粒再次,QLC颗粒现在最次;但是颗粒也分原厂颗粒,黑片,白片;原厂最好,黑片就是淘汰下来的渣渣。slc最好寿命长速度快也最贵...
- 文件夹怎么显示隐藏的文件夹
-
查找隐藏文件夹的方式如下:1、点击桌面的“计算机”,双击打开计算机2、在计算机页面中,点开自己存储文件夹的盘,这里以c盘为例。其他盘也可以依据这样的方式进行查找。3、找到左上角的“组织”,在其下拉的菜...
-
- 电脑硬盘怎么格式化干净(电脑硬盘格式化详细过程)
-
用普通格式化硬盘最干净,采用普通格式化,可以将硬盘中的内容删除掉,同时做上标志,而快速格式化只是对硬盘做了格式化标志,而没有删除内容硬盘格式化步骤:1,打开“我的电脑”,可以看到已经分区好但需要重新格式化的硬盘。2,用右键点击需要格式化的硬...
-
2026-01-07 06:55 liuian
- 下载的歌曲怎么转换成mp3格式
-
一般酷狗音乐下载的都是MP3格式的啊,如果不是的话,也可以通过以下方法来转换。;1、打开浏览器搜索关键词,找到该软件后下载并安装,然后双击打开,再点击“添加文件”。;2、添加后,在右下角选择转换格式为...
- 所有cpu性能天梯图(所有cpu性能天梯图都一样吗)
-
1、英特尔(Intel)i59400F酷睿六核盒装CPU处理器;2、英特尔(Intel)i7-9700K酷睿八核盒装CPU处理器;3、英特尔(Intel)i78700酷睿六核盒装...
- 电脑无故占用大量内存(电脑无故占用大量内存怎么办)
-
一种可能是后台运行太多,可能是你最近进行了很多任务,导致电脑占用内存变大。也可能是内在任务,类似于你引入了潜在任务,即电脑程序负荷太重,且程序存在不稳定因素,任务自动执行以缓解电脑压力。这个一般没事的...
-
- 控制自家wifi的软件防止蹭网
-
软件防蹭网是一种可以帮助用户保护无线网络安全的工具。它可以通过识别和阻止未授权的设备接入无线网络,保护用户的网络免受未经授权的访问和攻击。这些软件通常提供一些安全功能,如MAC地址过滤、WPA2加密、访客网络等,以确保只有授权的设备可以接入...
-
2026-01-07 04:55 liuian
- 电脑假死机解决方法(电脑假死现象)
-
1、看看你笔记本是否是双显卡的配置.在玩游戏和看视频时系统一般会自动启动独立显卡。所以可能就独显运行正常。问题可能和集显有关。2、你先到你笔记本官网,下载型号一致最新版本的主板、双显卡、声卡启动安...
-
- itunes安装错误(itunes安装不成功什么原因)
-
苹果电脑itunes的安装不了解决办法原因分析: 出现这种情况,是因为以前安装过itunes,后来在卸载时没有将itunes安装文件夹清除干净。 解决办法: 一般只要将以前安装iitunes的目录全部删除就可以解决了。itunes...
-
2026-01-07 03:55 liuian
- 360重装系统检测不过(360系统重装出现问题)
-
如果您的360系统重装无法通过检测,可能是由于以下原因:1.系统文件损坏:在使用过程中,一些关键的系统文件可能会丢失或损坏,导致某些功能无法正常运行。这种情况下,您可以尝试修复损坏的系统文件或者重新...
-
- 办公软件wps下载(办公软件wps下载免费版)
-
1、搜索【WPS】;2、进入官网,选择适合自己的版本,一般选择第一个;3、点击【免费下载】,进行下载;4、下载完成,点击【打开】运行或者双击安装包;5、点击同意许可协议和隐私策略,然后点击立即安装;6、也可以点击右下角的设置图标,更改...
-
2026-01-07 02:05 liuian
- 一周热门
-
-
飞牛OS入门安装遇到问题,如何解决?
-
如何在 iPhone 和 Android 上恢复已删除的抖音消息
-
Boost高性能并发无锁队列指南:boost::lockfree::queue
-
大模型手册: 保姆级用CherryStudio知识库
-
用什么工具在Win中查看8G大的log文件?
-
如何在 Windows 10 或 11 上通过命令行安装 Node.js 和 NPM
-
威联通NAS安装阿里云盘WebDAV服务并添加到Infuse
-
Trae IDE 如何与 GitHub 无缝对接?
-
idea插件之maven search(工欲善其事,必先利其器)
-
如何修改图片拍摄日期?快速修改图片拍摄日期的6种方法
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
