maven引入本地jar,部署到服务器上找不到

前言

java项目中引入了一些外部的jar包. 在本地idea中打包可以运行, 部署到服务器中, 报找不到依赖包.

解决方式

  • 自定义目录,这里在project的根目录新建lib文件夹,将jar放进去
  • pom.xml中引入
java 复制代码
<dependency>
          <groupId>自定义</groupId>
          <artifactId>自定义</artifactId>
          <version>自定义</version>
          <scope>system</scope>
          <!--systemPath:jar包的路径(idea编写的时候会有提示的)-->
          <systemPath>${project.basedir}/lib/taobao-sdk-java.jar</systemPath>
</dependency>

通过上述方式,在开发环境没有什么问题,不会存在什么包找不到等情况

  • 处理打包
java 复制代码
<build>
   <resources>
    <resource>
      <directory>lib</directory>
      <targetPath>/BOOT-INF/lib/</targetPath>
      <includes>
        <include>**/*.jar</include>
      </includes>
    </resource>
   </resources>
 </build>

directory :指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可
targetPath :打包到的文件夹位置,写上BOOT-INF/lib即可,或者是WEB-INF/lib。【斜杠(/)加不加都行,如果是mac的话写./】
includes:一般都是以jar结尾,就写**/*.jar

这样就解决啦 mvn package即可。

相关推荐
zzzzzz3103 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
小宇宙Zz6 天前
Maven依赖冲突
java·服务器·maven
古城小栈6 天前
Unix 与 Linux 异同小叙
linux·服务器·unix
程序猿阿伟6 天前
《Chrome离线扩展安装的底层逻辑与场景落地指南》
服务器·网络·chrome
凡人叶枫6 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
AC赳赳老秦6 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj6 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
lsyeei6 天前
linux 系统目录详解
linux·运维·服务器
森G6 天前
75、服务器源码解析---------云视频服务项目
linux·服务器·网络·c++·qt