前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Maven加载本地Jar包的实操记录

Maven加载本地Jar包的实操记录

作者头像
芈亓
发布2023-09-26 08:17:50
5260
发布2023-09-26 08:17:50
举报
文章被收录于专栏:笔记2022笔记2022

场景溯源

本人在开发一个SpringBoot框架的项目,其中用到一个第三方的jar包,需要在本地进行导入。

踩坑小计

方式一:直接把jar包放入resource目录下新建的一个libs目录下(不推荐)

这种方式在本地怎么用怎么好使,但是你打成jar包方式的话,springboot默认打jar包的时候是不会把resource目录下添加的jar包给打进去的,所以就会出现本地OK,打的项目包缺不能正常运行的情况

解决办法

  1. 打包的方式改成war包
  2. 加什么配置使得maven package的时候把libs的jar包也一并打出来。

将 JAR 包放置在 src/main/resources/lib 目录下: 首先,确保您的本地 JAR 包位于项目的 src/main/resources/lib 目录下。如果目录不存在,请手动创建它。

在 pom.xml 文件中配置 Maven 插件以包括资源文件: 在项目的 pom.xml 文件中,添加以下配置以确保 Maven 在打包应用程序时包括 resource/lib 目录下的资源文件。

代码语言:javascript
复制
<build>
  <resources>
      <resource>
          <directory>src/main/resources</directory>
          <filtering>true</filtering>
          <includes>
              <include>lib/**</include>
          </includes>
      </resource>
  </resources>
 </build>

这个配置将 src/main/resources 目录下的所有文件(包括 lib 子目录)包括在 Maven 构建中,并在打包时将它们复制到 JAR 文件中。

清理和构建项目: 执行以下 Maven 命令以清理和构建项目,并确保资源文件被正确打包:

代码语言:javascript
复制
  mvn clean package 

这将触发 Maven 构建过程,并在构建目录中创建包含 resource/lib 目录内容的 JAR 文件。

验证 JAR 文件内容: 检查生成的 JAR 文件,确保 resource/lib 目录下的本地 JAR 包已包含在 JAR 文件中。您可以使用压缩工具或命令行工具查看 JAR 文件的内容。

方式二:把jar包导入到本地仓库再直接引入(推荐)

解决办法

如果你当前使用的是Windows系统电脑,下面是实际的解决步骤:

使用WIN+R建,弹出运行窗口

输入cmd,然后在黑窗口进入需要导入项目的jar包所在位置

执行命令先把jar包导入到自己本地的maven仓库中,下面命令不能直接在-Dfile后面引入jar包的绝对路径,会报错,别问我是怎么知道的~

代码语言:javascript
复制
  mvn install:install-file -Dfile=xxx.jar -DgroupId=com.example -DartifactId=xxx -Dversion=1.0.0 -Dpackaging=jar

通过如下命令在pom文件中正常引入即可

代码语言:javascript
复制
<dependencies>
<!-- 其他依赖项 -->
<dependency>
    <groupId>com.example</groupId>
    <artifactId>xxx(此处是上面jar包的名字)</artifactId>
    <version>1.0.0</version>
</dependency>
</dependencies>

引入成功后执行以下命令就OK了

代码语言:javascript
复制
   mvn clean package 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 场景溯源
  • 踩坑小计
    • 方式一:直接把jar包放入resource目录下新建的一个libs目录下(不推荐)
      • 解决办法
    • 方式二:把jar包导入到本地仓库再直接引入(推荐)
      • 解决办法
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档